目录
3.进入到解压后的redis文件目录中,使用make命令进行编译:
官网:Redis
中文:CRUG网站
编辑
不考虑在Windows安装使用redis!!!
安装步骤:
1.检查受否有gcc编译器的环境支持:
gcc --version
:检车gcc编译器版本
yum install gcc
:联网安装gcc
等待安装成功......
编辑
安装成功后进行检查:
编辑
2.上传redis到Linux系统的主机中:
将官网下载的压缩包上传到linux主机中:
编辑
使用命令进行解压:tar -zxvf 压缩文件名称(可以使用Tab键补全名称)
编辑
3.进入到解压后的redis文件目录中,使用make命令进行编译:
使用make
对redis进行编译:
编辑
可能出现问题:
编辑
解决方法:
运行make distclean
后,再对redis目录进行make
编译
4.编译完成之后进行安装:
跳过make test
继续执行make install
编辑
安装目录:
Redis在执行了make install
之后,程序被安装在了/usr/local/bin
目录下
编辑
查看默认目录:
- redis-benchmark:性能测试工具,可以在自己本子运行,看看自己本子性能如何
- redis-check-aof:修复有问题的AOF文件,rdb和aof后面讲
- redis-check-dump:修复有问题的dump.rdb文件
- redis-sentinel:Redis集群使用
- redis-server:Redis服务器启动命令
- redis-cli:客户端,操作入口
程序启动:
前台启动:
执行命令:redis-server
编辑
编辑
ctrl + C :停止Redis服务:
编辑
后台启动:(推荐)
1.复制redis.config文件:
执行命令cp redis.config /etc/redis.config
:
编辑
编辑
编辑
2.修改Redis.config配置文件:
使用vi redis.config
修改启动设置:daemotion no改成yes
修改redis.conf(128行)文件将里面的daemonize no 改成yes,让服务在后台启动
编辑
执行redis-server /etc.redis.config
:启动项目
执行ps -ef | grep redis
:查看当前程序进程
关闭当前窗口,也不影响Redis的运行!
执行redis-cli
连接Redis客户端:
编辑
连接多个客户端redis-cli-p6379
执行ping
测试验证(PONG表示正常的连接状态)
3.关闭Redis:
单实例关闭:
执行redis-cli shutdown
也可以进入终端之后,执行shutdown
编辑
多实例:
指定端口关闭:redis-cli -p 端口号 shutdown
Redis默认端口号:6379
Redis相关介绍:
- 默认16个数据库,类似数组下标从0开始,初始默认使用0号库
- 使用命令select <dbid>来切换数据库。如: select 8
- 统一密码管理,所有库同样密码。
- dbsize查看当前数据库的key的数量
- flushdb清空当前库
- flushall通杀全部库
(Redis是单线程+多路IO复用技术)
多路复用是指使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)
串行 vs 多线程+锁(memcached) vs 单线程+多路IO复用(Redis)
(与Memcache三点不同: 支持多数据类型,支持持久化,单线程+多路IO复用)
编辑
单线程模型
- Redis 单线程指的是网络请求模块使用了一个线程,即一个线程处理所有网络请求;
- 其他模块该使用多线程,仍会使用了多个线程。
结构
- 多个 Socket
- IO 多路复用程序
- 文件事件分派器
- 事件处理器(连接应答处理器、命令请求处理器、命令回复处理器)
实现
Redis 内部使用文件事件处理器 file event handler,这个文件事件处理器是单线程的,所以 Redis 才叫做单线程的模型。
它采用 IO 多路复用机制同时监听多个 Socket,并把所有产生事件的socket压入一个队列中,然后有序地每次仅一个socket的方式传送给文件事件分派器,文件事件分派器接收到socket之后会根据socket产生的事件类型调用对应的事件处理器进行处理。
编辑
什么是IO多路复用?
编辑