redis6.0的安装 redis6 新特性
redis
1.解决功能性问题:各种语言
2.解决扩展性问题:spring等
3.解决性能性问题:NoSQL,java线程,Hadoop.Nginx
NoSql概述
不遵循SQL标准 不支持ACID 选超于sql的性能
适用场景
对数据高并发的读写 海量数据的读写 对数据源结构的扩展性
安装redis6
$ wget https://download.redis.io/releases/redis-6.2.6.tar.gz $ tar xzf
redis-6.2.6.tar.gz $ cd redis-6.2.6 $ make 进入到src 目录
./redis-service …/redis.conf 进行启动 然后打开redis-cli
设置redis 后台启动 需要设置 redis.conf 配置文件里面的daem…为yes
redis安装时常见的问题
在Linux上,如果开了redis的守护进程,kill -9和redis-cli shutdown 命令是无法杀掉 redis 进程的
,杀掉就会重新启动一个新的进程 /etc/init.d/redis-server stop 用这个命令可以杀掉redis 中常见的几个名词 单线程+多路IO复用
多路IO复用是指:使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里面执行,也可以启动线程执行(比如使用线程池)
redis6 新特性
1.ACL
Redis ACL 是Access Control List
(访问控制列表)的缩写,该功能允许根据可以执行的命令和可以访问的键来限制某些连接。在Redis 5版本之前,
Redis安全规则只有密码控制还有通过rename来调整高危命令比如flushdb ,KEYS* ,skutdown 等。Redis
6则提供ACL的功能对用户进行更细粒度的权限控制: (1)接入权限:用户名和密码。 (2)可以执行的命令。 (3 )可以操作的KEYs命令
acl list
2.IO多线程
I0多线程其实指客户端交互部分的网络I0交互处理模块多线程,而非执行命令多线程。Redis6执行命令依然是单线程
专门用来处理网络数据和协议解析的,多线程IO默认也是不开启的,需要再配置文件中配置 io-threads-do-reads yes
io-threads 4
3.工具支持cluster
之前老版Redis想要搭集群需要单独安装ruby环境, Redis 5将redis-trib.rb
的功能集成到redis-cli。另外官方redis-benchmark工具开始支持cluster
模式了,通过多线程的方式对多个分片进行压测。