关于延时消息突然大量插入问题讨论

我通常用延时消息在处理订单未支付超时等相关业务,比如5分钟、10分钟超时,如果说有几十万甚至上百万条延时消息等待消费,会不会对系统有很大压力?单机redis能支撑的延时消息大约是多少?有大佬测试过吗?如果中间件换成rabbitmq又是多少?

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 6

如果是队列内存够大就行,只是业务如果处理太慢得考虑延时时间是否能接受。

1年前 评论

小体量没为题,大体量不建议用队列,大量的消息堆积,对一些中间件和服务器的压力还是很大的成本也较高,定时任务比较靠谱 :joy:。

1年前 评论

我最近在优化代码 redis队列积压了30w条数据占用了0.6G内存
消费的话数据库有压力,redis只要内存够用就行

1年前 评论

rabbitmq 延迟消息 用 死信队列 或 插件;
死信队列会造成队头阻塞;
插件不适合大量延迟消息 #issues/72

redis 只要内存够大就行,重复消费消息丢失要自己去保证。

1年前 评论

主要是你消费队列,你多服务器去执行队列,然后每台服务器的队列消费的进程数稍微多一些,同时这么多同时执行的时候,你别的中间件如数据库要能扛得住,不然也不行

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!