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

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

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 6

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

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

1年前 评论

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

1年前 评论

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