![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 86
redis
CodeSerial
这个作者很懒,什么都没留下…
展开
-
Reids stream 非阻塞轮询导致QPS飙到1.8W
Reids stream 非阻塞轮询导致QPS飙到1.8WQPS监控 触发报警机制,最近redis被用来做简化版消息队列了在测试环境也发现这个现象,打印执行中的堆栈命令jstack -l xxxx > jstack.log at org.springframework.data.redis.stream.StreamPollTask.doLoop(StreamPollTask.java:138) at org.springframework.data.redis.stream.Strea原创 2021-09-14 18:24:50 · 576 阅读 · 0 评论 -
基于redis stream + spring boot的消息队列机制简单实现
基于redis stream + spring boot的消息队列机制简单实现1.通知结构整体设计2.流程解析在各个不同的功能点都可能触发消息通知,借助LxNoticeStreamUtil#addNoticeMessage(Integer noticeAction,String actionParam)方法将消息推送到指定队列在程序启动时就会由StreamConsumerRunner启动MQ的监听器StreamMessageListener,一旦有消息产生,监听者自动接收消息,并解析执行原创 2021-06-26 15:06:29 · 1466 阅读 · 0 评论 -
Redis 字符串SDS源码解析
Redis 字符串SDS源码解析1.简介redis 字符串简单动态字符串(simple dynamic string,sds)底层采用柔性数组的特殊结构体具有二进制安全,占用空间小,结构紧凑等特点。接下去将介绍sds的基础结构体以及初始化、数据清理、扩容三个方法2.基础结构体为解决定长字符串占用额外空间的问题将字符串分为三种长度,短字符串占用空间小,可通过长度+类型整合进一步压缩容量。基础结构定义// 01234代表某个结构体存储数据的长度占多少个字节#define SDS_TYPE_5原创 2021-06-23 15:07:45 · 124 阅读 · 0 评论 -
Redis Stream 消息队列的简单应用
Redis Stream 消息队列的简单应用目标借助Redis Stream构建一个简单消息队列有以下特点:拥有一个不断增长的队列,但支持容量限制自动缩容,避免超出内存限制,并支持配置化开启消息监听,支持 consumer group 监听队列手动确认与消息重试机制,消息被消费并不出现问题时手动确认消息消费,如果出现异常则通过补偿机制对未处理完成队列(pending list)中的消息进行重试。Redis Stream 基础概念介绍基本数据结构中间最核心的是一个基础的消息队列,队列中的原创 2021-04-17 16:12:31 · 736 阅读 · 0 评论