做流程图表的网站,网络营销推广网站收录,上传更新wordpress,织梦网站更改一、Redis介绍
Redis#xff08;Remote Dictionary Server#xff09;是一款开源的、高性能的键值对#xff08;Key-Value#xff09;存储数据库#xff0c;由 Salvatore Sanfilippo 于 2009 年开发#xff0c;采用 ANSI C 语言编写。它以内存存储为核心#xff0c;支持…一、Redis介绍
RedisRemote Dictionary Server是一款开源的、高性能的键值对Key-Value存储数据库由 Salvatore Sanfilippo 于 2009 年开发采用 ANSI C 语言编写。它以内存存储为核心支持数据持久化同时提供了丰富的数据结构和灵活的功能广泛应用于缓存、会话存储、消息队列、实时分析等场景。 1.1 Redis 的特点 高性能 所有数据默认存储在内存中读写速度极快单机 QPS 可达 10 万 远超磁盘数据库如 MySQL。采用单线程模型避免多线程上下文切换开销结合 IO 多路复用机制高效处理并发请求。 丰富的数据结构 支持多种原生数据结构满足复杂业务需求 字符串String最基础的键值类型可存储文本、数字或二进制数据最大 512MB。哈希Hash适合存储对象如用户信息键值对的集合。列表List有序字符串集合支持两端插入 / 删除可实现队列、栈等结构。集合Set无序且唯一的字符串集合支持交集、并集等运算。有序集合Sorted Set类似 Set但每个元素关联一个分数Score可按分数排序如排行榜。其他BitMap位图、HyperLogLog基数统计、Geospatial地理位置等。 数据持久化 虽然数据存储在内存中但 Redis 提供两种持久化方式避免宕机后数据丢失 RDBRedis Database定期将内存中的数据快照写入磁盘二进制文件适合备份和灾难恢复。AOFAppend Only File记录所有写操作到日志文件重启时重新执行日志恢复数据可靠性更高可配置刷盘策略。 高可用与扩展性 主从复制Master-Slave主节点写入数据从节点同步并提供读服务实现读写分离和故障备份。哨兵模式Sentinel监控主从节点状态当主节点故障时自动将从节点升级为主节点保证高可用。集群模式Cluster将数据分片存储在多个节点支持横向扩展最多 16384 个节点解决单机内存和性能瓶颈。 原子操作与事务 所有单个命令都是原子性的支持通过MULTI、EXEC等命令实现简单事务批量执行命令要么全成功要么全失败。提供WATCH命令实现乐观锁用于并发场景下的数据一致性控制。 其他特性 过期键删除支持为键设置过期时间自动删除过期数据基于惰性删除 定期删除策略。发布订阅Pub/Sub实现简单的消息队列功能支持消息的发布与订阅。Lua 脚本支持嵌入 Lua 脚本执行实现复杂逻辑的原子性操作。跨平台可在 Linux、Windows、macOS 等系统运行且客户端语言丰富Java、Python、Go 等均有成熟库。
1.2 Redis应用场景
缓存存储热点数据如商品信息、用户会话减少数据库访问压力提升读性能。会话存储替代传统的 Cookie 或服务器本地会话实现分布式系统中的会话共享。计数器与排行榜利用INCR命令实现点赞数、访问量统计通过Sorted Set实现实时排行榜。消息队列基于List的LPUSH/RPOP或 Pub/Sub 实现简单的消息传递。分布式锁通过SETNXSET if Not Exists命令实现分布式环境下的资源竞争控制。地理位置服务利用GEO系列命令实现附近的人、距离计算等功能。
二、配置Redis
这里介绍在Ubuntu下载并配置Redis
2.1 下载Redis
到Redis官网下载这里选择下载7.0.5版本http://download.redis.io/releases/redis-7.0.5.tar.gz
下载完成后解压到当前目录下
tar -zxvf redis-7.05.tar.gz进入到对应的解压后的文件夹下里面有Makefile文件
cd redis-7.052.2 编译Redis
在Makefile文件路径下执行make进行编译编译完成后使用make install安装到默认路径下
make -j4 sudo make installRedis默认安装到/usr/local/bin目录下安装后有redis-server服务器和redis-cli客户端
ls /usr/local/bin | grep redis2.3 设置配置文件
启动Redis的时候需要指定配置文件我们这里创建一个配置文件的目录用于存放Redis的配置文件
cd /usr/local/bin
sudo mkdir redisconf实际上刚刚解压的文件夹中存在默认的Redis配置即redis.conf文件我们将它拷贝到我们的文件夹中
sudo cp ~/redis-7.0.5/redis.conf ./redisconf/下面是常见的Redis配置如有需要可以修改配置文件
# 允许访问的地址默认是127.0.0.1会导致只能在本地访问。修改为0.0.0.0则可以在任意IP访问生产环境不要设置为0.0.0.0
bind 0.0.0.0
# 守护进程修改为yes后即可后台运行
daemonize yes
# 密码设置后访问Redis必须输入密码
requirepass 123456
# 监听的端口
port 6379
# 工作目录默认是当前目录也就是运行redis-server时的命令日志、持久化等文件会保存在这个目录
dir .
# 数据库数量设置为1代表只使用1个库默认有16个库编号0~15
databases 1
# 设置redis能够使用的最大内存
maxmemory 512mb
# 日志文件默认为空不记录日志可以指定日志文件名
logfile redis.log
2.4 启动Redis
启动Redis服务器指定我们的配置文件启动完成后的服务器输出如下
redis-server /usr/local/bin/redisconf/redis.conf启动客户端这里我们可以使用-p指定端口如果不指定就使用默认的端口6379
redis-cli -p 6379查看进程信息确保启动了Redis
ps -aux | grep redis2.5 测试Redis
在Redis客户端redis-cli输入info查看对应的Redis信息
info更多资料https://github.com/0voice