redis
本专栏主要介绍一下redis基础,大部分内容参考《Redis开发与运维(完整版)》这本书
孟诸
coding
展开
-
redis学习十-分布式锁
1 手写分布式锁1.1 定义注解@Target(value={ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)public @interface DistributeLock { /** * lock key */ String key(); /** * expire time */ long expire(); /** * every thread max try times */ int tr原创 2021-11-24 00:06:12 · 872 阅读 · 0 评论 -
redis学习九-redis常用配置
1 客户端连接配置1.1 相关配置最大连接数:maxclients 10000,一旦超过最大连接数,新的连接将被拒绝最大空闲时间:timeout 0,空闲时间超过timeout则关闭连接。0表示永不关闭检测tcp连接活性周期:tcp-keepalive 300,默认每300s检查一次,防止大量死连接占用资源1.2 查看当前配置127.0.0.1:6379> config get maxclients1) "maxclients"2) "10000"127.0.0.1:6379原创 2020-09-13 20:51:38 · 154 阅读 · 0 评论 -
redis学习八-redis当前状态查看
目录1 查看客户端连接信息1.1 客户端标识1.2 输入缓冲区1.2.1 输入缓冲区介绍1.2.2 输入缓冲区使用不当会出现两个问题1.2.3 造成输入缓冲区过大的原因1.2.4 缓冲区监控1.3 输出缓冲区1.4 客户端存活状态1.5 杀掉指定ip端口的客户端2 客户端缓冲区统计3 客户端连接数统计4 内存监控4.1 查看那当前内存使用大小4.2 查看内存配置大小1 查看客户端连接信息通过执行client list命令来查看客户端连接信息原创 2020-09-13 20:39:35 · 4395 阅读 · 0 评论 -
redis学习七-持久化
目录1 RDB1.1 触发机制1.1.1 手动触发1.1.2 自动触发1.2 流程说明1.3 RDB文件处理1.4 优缺点1.4.1 优点1.4.2 缺点1.5 日志2 AOF2.1 使用AOF2.2 流程说明2.3 aof重写说明2.3.1 aof重写文件变小2.3.2 触发机制2.3.3 aof重写过程2.4 优缺点2.4.1 优点2.4.2 缺点2.5 日志3 混合模式3.1 开启混合持久化3.2 混合持久原创 2020-09-03 11:34:32 · 279 阅读 · 0 评论 -
redis学习六-地理信息定位(GEO)的使用
1 GEO简介redis3.2版本支持存储地理位置信息来存储地理位置,很多app中地理位置相关功能如附近位置、摇一摇等功能可以通过GEO来实现2 常用命令2.1 添加地理位置信息geoadd key longitude latitude member [longitude latitude member ...] longitude:经度 latitude:维度 member:成员 return:添加成功的个数添加5个个城市的经纬度127.0.0.1:63...原创 2020-09-02 13:01:11 · 850 阅读 · 0 评论 -
redis学习五-HyperLogLog使用
1 HyperLogLog简介HyperLogLog实际类型是字符串,通过基数算法利用极小的空间来完成独立总数的统计。这种统计不是100%准确的,官方给出的是0.81%的误差。2 常用命令同样以用户登录在某天登录来介绍2.1 添加pfadd key element [element ...]4个用户在2020-09-01这天进行登录,3个用户在2020-09-02号这天登录127.0.0.1:6379> pfadd user:login:2020-09-01 user1 use原创 2020-09-02 12:59:05 · 155 阅读 · 0 评论 -
redis学习四-位图(bitmap)使用
1 bitmap简介现代计算机都是用二进制(位)作为信息的基础,1个字节=8位,如big有2个字符组成,对应的ASCII值分别是98、105、103、对应的二进制分别是01100010、01101001、01100111,如下图 b i g01100010 01101001 01100111bitmap本身并不是数据结构,实际上就是字符串,但是它可以对字符串的位进行操作,可以把bitmap想象成一个以bit为单位的数组,数组每个单元...原创 2020-09-02 10:49:52 · 1428 阅读 · 0 评论 -
redis学习三-redisShell介绍
目录1 redis-cli介绍1.1 执行频率和间隔1.2 集群环境连接1.3 认证连接1.4 大key查询1.5 查看网络延迟1.6 查看redis信息(内存、连接等)2 redis-benchmark介绍2.1 并发数和请求量2.2 统计每秒并发量2.3 随机键插入测试2.4 对指定命令测试2.5 CSV格式输出1 redis-cli介绍1.1 执行频率和间隔-r:repeat表示多次执行-i:表示每隔几秒执行1次,需要和-r配合使用,可原创 2020-09-01 16:27:40 · 229 阅读 · 0 评论 -
redis学习二-慢查询分析
1 慢查询日志说明redis客户端执行命令包括4步1)发送命令2)命令排队3)命令执行4)返回结果慢查询命令只统计第三步的时间,如果没有慢查询日志,不代表客户端没有超时2 相关配置redis慢查询相关配置主要包括2个慢查询时间阈值配置: slowlog-log-slower-than,默认10000微秒,即10毫秒。如果执行时间超过10ms这条命令就会被记录到慢查询日志中。如果配置值=0,则会记录所有命令;如果<0,则任何命令都不记录慢查询日志存储量:slowlog-max-原创 2020-09-01 12:53:48 · 160 阅读 · 0 评论 -
redis学习一-入门操作
目录1 全局命令1.1 查看所有键1.2 键总数1.3 查看键是否存在1.4 删除键1.5 键过期和查看过期时间1.6 键的数据结构2 字符串2.1 设置值2.2 获取值2.3 批量设置与获取2.4 自增自减2.5 使用场景3 哈希3.1 设置值3.2 获取值3.3 删除field3.4 计算field个数3.5 批量操作3.6 判断field是否存在3.7 自增自减3.8 使用场景4 列表4.1 添加4.2原创 2020-09-01 12:51:42 · 158 阅读 · 0 评论