
redis
光阴不负卿
进击的程序员
展开
-
Spring Boot整合Redis详解
Redis的Java客户端有很多,例如Jedis、JRedis、Spring Data Redis等,Spring Boot借助于Spring Data Redis为Redis提供了开箱即用的自动化配置,开发者只需要添加相关依赖并配置Redis连接信息即可,具体步骤如下:创建Spring Boot项目:首先创建Spring Boot项目,添加如下依赖:<dependency> <groupId>org.springframework.boot</gro.原创 2020-12-08 15:44:35 · 1063 阅读 · 0 评论 -
Java使用Redis详解
前期准备:能正常运行java 确保安装了redis服务 下载 java redis驱动:jedis.jar 在项目的classpath中包含该驱动包连接redis服务:import redis.clients.jedis.Jedis;public class RedisJava { public static void main(String[] args){ //连接本地的redis Jedis jedis = new Jedis("localh原创 2020-12-07 16:06:49 · 1138 阅读 · 0 评论 -
Redis分区详解
Redis分区:分区时分割数据到多个redis实例的处理过程,因此每个实例只保存Key的一个子集。分区的优势:通过利用多台计算机内存和值,允许我们构造更大的数据库 铜鼓多核和多台计算机,允许我们扩展计算能力 通过多台计算机和网络适配器,允许我们扩展网络带宽分区的不足:redis的一些特性在分区方面表现的不是很好:涉及多个key的操作通常是不支持的。举例来说,当两个set映射到不同的redis实例上时,你就不能对这两个set执行交集操作 设计多个key的redis事务不能使用 当原创 2020-12-07 14:50:26 · 627 阅读 · 0 评论 -
Redis客户端连接及管道技术
Redis客户端连接:Redis通过监听一个TCP端口或者Unix socket的方式来接收来自客户端的连接,当一个连接建立后,Redis内部会进行以下一些操作:首先,客户端socket会被设置为非阻塞模式,因为Redis在网络事件处理上采用的是非阻塞多路复用模型 然这个socket设置tcp_nodelay属性,金庸nagle算法 然后创建一个可读的文件事件用于监听这个客户端socket的数据发送客户端命令:序号 命令 命令描述 1 client list 返原创 2020-12-07 10:20:13 · 285 阅读 · 0 评论 -
Redis性能测试
Redis性能测试:Redis性能测试是通过执行多个命令实现的。语法:redis性能测试的基本命令如下:redis-benchmark [option] [option value]注意:该命令是在redis的目录下执行的,而不是redis客户端的内部指令。实例:同时执行10000个请求来检测性能:$ redis-benchmark -n 10000 -qPING_INLINE: 141043.72 requests per secondPING_BULK: 14原创 2020-12-04 20:51:03 · 520 阅读 · 0 评论 -
Redis安全
Redis安全:我们可以通过redis的配置文件设置密码参数,这样客户端连接到redis服务就需要密码验证,这样可以让redis服务更安全。实例:查看是否设置了密码验证:127.0.0.1:6379> CONFIG get requirepass1) "requirepass"2) ""默认情况下requirepass参数是空的,这就意味着无需通过密码验证就可以连接到redis服务。可以通过以下命令来修改该参数:127.0.0.1:6379> CONFIG set原创 2020-12-04 20:26:38 · 82 阅读 · 0 评论 -
Redis数据备份与恢复
Redis SAVE命令用于创建当前数据库的备份。语法:redis Save命令基本语法如下:redis 127.0.0.1:6379> SAVE 实例:redis 127.0.0.1:6379> SAVE OK该命令将在redis安装目录中创建dump.rdb文件。恢复数据:如果需要恢复数据,只需将备份文件(dump.rdb)移动到redis安装目录并启动服务即可。获取redis目录可以使用CONFIG命令,如下所示:redis 127.0.0.1:原创 2020-12-04 20:20:38 · 134 阅读 · 0 评论 -
Redis Stream最全用法详解二
增删改查:xadd:追加消息 xdel:删除消息,这里的删除仅仅是设置了标志位,不影响消息总长度 xrange:获取消息列表,会自动过滤已经删除的消息 xlen:消息长度 del:删除Stream作者:知乎用户链接:https://www.zhihu.com/question/279540635/answer/409746087来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。# *号表示服务器自动生成ID,后面顺序跟着一堆key/value127.0原创 2020-12-04 17:10:41 · 3143 阅读 · 0 评论 -
Redis Stream最全用法详解一
redis Stream:redis Stream是redis 5.0版本新增加的数据结构。redis stream主要用于消息队列(MQ,Message Queue),Redis本身是有一个Redis发布订阅(pub/sub)来实现消息队列的功能,但它有个缺点就是消息无法持久化,如果出现网络断开、Redis宕机等,消息就会被丢弃。简单来说发布订阅(pub/sub)可以分发消息,但无法记录历使消息。而Redis Stream提供了消息的持久化和主备复制功能,可以让任何客户端访问任何时刻的数据原创 2020-12-04 16:32:58 · 11874 阅读 · 3 评论 -
Redis GEO详解
redis GEO:redis GEO主要用于存储地理位置信息,并对存储的信息进行操作,该功能在Redis 3.2版本新增。redis GEO操作方法:geoadd:添加地理位置的坐标 geopos:获取地理位置的坐标 geodist:计算两个位置之间的距离 georadius:根据用户给定的经纬度坐标来获取指定范围内的地理位置集合 georadiusbymember:根据存储在位置集合里面的某个地点获取指定范围内的地理位置集合 geohash:返回一个或多个位置对象的geohash值原创 2020-12-04 14:19:05 · 1746 阅读 · 1 评论 -
redis学习之redis连接、redis服务器
redis连接:redis连接命令主要用于连接redis服务实例:通过密码验证连接到redis服务,并检测服务是否正在运行:redis 127.0.0.1:6379> AUTH "password"OKredis 127.0.0.1:6379> PINGPONGredis连接命令:序号 命令 命令描述 1 auth password 验证密码是否正确 2 echo message 打印字符串 3 ping 查原创 2020-12-03 11:36:33 · 423 阅读 · 1 评论 -
redis学习之redis事务
redis事务:redis事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程中,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令序列中。总结来说:redis事务就是一次性、顺序性、排他性的执行一个队列中的一系列命令。redis事务没有隔离级别的概念:批量操作在发送exec命令前被放入队列缓存,并不会被实际执行,也就不存在事务内的查询要看到事务里的更新,事务外查询不能看到。redis不保证原子性:redi原创 2020-12-03 10:44:32 · 123 阅读 · 0 评论 -
redis学习之发布订阅
redis发布订阅:redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。redis客户端可以订阅任意数量的频道。下图展示了频道channel1,以及订阅这个频道的三个客户端---client2、client5、和client1之间的关系:当有新消息通过publish命令发送给频道channel1时,这个消息就会被发送给订阅它的三个客户端:实例:创建订阅频道为runoobChat,需要开启两个redis-cli客户端:原创 2020-12-03 10:22:53 · 111 阅读 · 0 评论 -
redis学习之 redis hyperloglog
redis HyperLogLog :reids在2.8.9版本添加了hyperloglog结构。它是用来做基数统计的算法,优点是,在输入元素的数量或者体积非常大时,计算技术所需要的空间总是固定的、并且是很小的。在redis里面,每个hyperloglog键只需要花费12KB内存,就可以计算接近2的64次方个不同元素的基数。这和计算基数时,元素越多耗费内存就越多的集合形成鲜明对比。但是,因为HyperLogLog只会根据输入元素来计算基数,而不会存储元素本身,所以HyperLogLog不能像集合原创 2020-12-03 09:57:50 · 269 阅读 · 0 评论 -
redis学习之redis命令(二)
redis列表(list)redis列表命令redis集合(set)redis集合命令redis有序集合(sorted set)redis有序集合命令原创 2020-12-03 09:16:26 · 175 阅读 · 0 评论 -
redis学习之redis命令(一)
redis命令:redis命令用于在redis服务上执行操作。要在redis服务上执行命令需要一个redis客户端。redis客户端在redis安装包中。redis客户端基本语法为:$ redis-cli启动客户端,连接本地的redis服务:$ redis-cliredis 127.0.0.1:6379>redis 127.0.0.1:6379> PINGPONG上面实例连接到本地的redis服务并执行ping命令,该命令用于检测redis服务是否启动。原创 2020-12-01 21:31:19 · 138 阅读 · 0 评论 -
windows环境下创建redis-cluster集群
1、下载redis,在解压后的目录中新建6个文件夹:7001-70062、将redis下面的文件复制到7001-7006各个文件夹下面3、修改6个文件夹下面redis.windows.conf文件配置port 7001#bind 127.0.0.1cluster-enabled yescluster-config-file nodes-7001.conf#requirepass第一行设置端口号第二行配置允许连接该redis实例的地址,默认情况下只允许本地连接,将默认配置原创 2020-12-01 19:21:17 · 516 阅读 · 2 评论 -
redis集群原理及三种模式详解
1、redis集群简介redis最开始使用主从模式做集群,若master宕机需要手动配置slave转为master;后来为了高可用提出了哨兵模式,该模式下有一个哨兵监视master和slave,若master宕机可以自动将slave转为master,但它也有一个问题,就是不能动态扩充;所以在3.x提出cluster集群模式。2、redis集群原理在redis集群中,所有的redis节点彼此互联,节点 内部使用二进制协议优化优化传输速度和带宽。当一个节点挂掉后,集群中超过半数的节点检测失效时才认为原创 2020-12-01 18:07:52 · 5277 阅读 · 0 评论 -
Redis学习笔记(一)
Redis简介:Redis是完全开源的,遵守BSD协议,是一个高性能的key-value数据库。Redis与其他key-value缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。 Redis支持数据的备份,即mastre-slave模式的数据备份。Redis优点:性能极高-Redis能读的速度是11原创 2020-11-30 11:36:42 · 207 阅读 · 0 评论