赞
踩
相对都比较鸡肋,谨慎在生产环境使用
Redis6版本推出了ACL(Access Control List)访问控制权限 的功能,基于此功能,可以设置多个用户,并且给每个用户单独设 置命令权限和数据权限。
ACL文件配置方式有两种,一种是在config文件中直接配置,另一种是在外部aclfile中配置,配置命令是一样的
ACL是使用DSL定义的,该规则是从上到下,从左到右的,具体可以参考附录中的具体规则说明
RESP(REdisSerializationProtocol),是 Redis服务端与客户端之间通信的协议。
在Reds6之前的版本,使用的是RESP2协议,数据都是以字符串数组的形式返回给客户端,客户端需要根据类型进行解析,增加了客户端实现的复杂度。
RESP3协议可以按类型返回数据。 可以使用HELLO命令在RESP2和RESP3协议之间进行切换
新增的客户端缓存的设计导致客户端缓存和redis缓存绑定,十分不灵活,会导致资源浪费,没有很大的实际使用价值。
Redis中值的变化每次需要同步到客户端缓存,但是客户端并非会用到没的变化,导致资源浪费,数据管理更加复杂了,实际价值不大
注意:主流程操作还是单线程
开启IO多线程:io-threads-do-reads yes 配置线程数量,如果设为1就是主线程模式:io-threads 4
目前官方建议:至少4核的机器才开启IO多线程,并且除非真的遇到了性能瓶颈
,否则不建议开启此配置 。 建议配置的线程数少于机器总线程数,线程并不是越多越好 ,多于8个线程意义不大
集群代理把集群抽象成为单个Redis实例,客户端通过集群 代理访问集群,就像访问单个Redis一样,不去关心很多集群上 的问题,比如:集群模式下multiple操作的限制及跨slot操作限 制等等,这些由集群代理去处理。
目前是一个实验性的功能,需要单独安装、单独配置、单独运行,不建议生产环境使用。
Lua是一个高效、简洁、轻量级、可扩展的脚本语言,可以很方便的嵌入到其它语言或中间件中使用,Redis从2.6版支持Lua。
Lua是一个动态类型的语言,一个变量可以存储任何类型的值
local
关键字进行声明--
来表示,多行注释使用--[[ 开始,到 ]] 结束
..
用来连接字符串#
来获取长度,比如:print(#‘helloworld’)在Redis中执行lua脚本命令: redis-cli --eval 脚本 [key...] , [arg...]
在脚本中调用Redis命令:redis.call
,遇到错误会直接返回;想要继续执行使用redis.pcall
命令
Lua数据类型与Redis返回值类型对应关系:
其它命令:
Redis支持简单的发布订阅模式,可以实现进程间的消息传递,对业务要求不高的可以选择使用
下面是一些常用的操作命令:
注意这里匹配模式的时候,是不会将通配符展 开的,是严格进行字符串匹配的,比如:punsubscribe * 是无法退定 c1.* 的,必须严格使用punsubscribe c1.*才可以
Lettuce是一个可伸缩线程安全的Redis客户端。多个线程可以共享同一个RedisConnection。它利用优秀netty NIO框架来高效地管理多个连接。
Lettuce核心组件有:RedisURI、Connection、RedisClient、RedisCommands
官网地址:https://lettuce.io/docs/getting-started.html
基本依赖:
dependencies {
compile 'io.lettuce:lettuce-core:6.1.4.RELEASE
}
基本使用示例:
RedisClient redisClient = RedisClient.create("redis://password@localhost:6379/0");
StatefulRedisConnection<String, String> connection = redisClient.connect();
RedisCommands<String, String> syncCommands = connection.sync();
syncCommands.set("key", "Hello, Redis!");
connection.close();
redisClient.shutdown();
与Spring的集成
@Configurationclass AppConfig { @Beanpublic LettuceConnectionFactory redisConnectionFactory() { return new LettuceConnectionFactory(new RedisStandaloneConfiguration("server", 6379)); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。