rabbitmq 限制速度_关于消息队列速率的解决方案
消息队列在执行过程中, 如何统计消息队列执行一轮的时间以及效率呢? 如果消息队列中的任务变多, 则需要对应增加消费进程, 保证队列不被堆积。
一、一般消息队列生产和消费类型
1. 一次性任务消费
从某个地方一次性写入多个任务到队列, 消费完成后就算完成
2. 不断写入的任务消费
一般是判断队列任务少了, 就开始写入任务, 队列任务足够则不写入任务。对应的消费进程也是持久性进程。
3. 有任务则写入, 然后持续消费
随时可能有任务产生, 之后不断消费。任务写入时间不可控, 所以消费进程一般也得是持久性进程。
二、如何计算出来消费一轮的时间以及消费速率
1. 通过统计任务开始和结束, 计算消费总时间
当时最早想到的就是这种方式, 这种方式的优点:
统计相对准确
缺点:
流程复杂且耦合性高
如果中间有队列暂停之类的时间, 也会被包含进时间内。
2. 通过读取队列状态, 获取到一定时间内消耗数量
根据两次读取的任务数, 得到固定时间内的消耗掉的任务数, 计算出来执行的任务。
3. 通过计算单个任务的执行时间, 然后根据运行的进程数, 来计算一轮的时间。
之后根据运行进程数, 以及任务总数, 来获取到一轮的更新时间。 或者一段时间内取样, 来计算需要的机器和进程数。
如果有其他更好的办法, 希望可以一起交流下。
rabbitmq 限制速度_关于消息队列速率的解决方案相关推荐
- rabbitmq 限制速度_=(:) RabbitMQ详解
本篇包含了RabbitMQ概念的一些东西,下篇会整理出SpringBoot结合RabbitMQ的使用案例. 目录 一.MQ概述 1.什么是消息 2.什么是消息队列 3.MQ的特点 二.MQ适用场景 1 ...
- rabbitmq 限制速度_如何控制消息队列的消费速度?
一.需求: 比如我消费1000个队列.我将速度等级分为100个等级. 1倍速,每小时消费800个. 100倍速就是每小时消费 800*100个. 这样就可以计算每个队列的消费间隔,比如1倍速间隔是 4 ...
- rabbitmq 限制速度_技术干货分享:RabbitMQ消息积压的几种解决思路
在日常工作中使用RabbitMQ偶尔会遇不可预料的情况导致的消息积压,一般出现消息积压基本上分为几种情况: 消费者消费消息的速度赶不上生产速度,这种问题主要是业务逻辑没设计好消费者和生产者之间的平衡, ...
- rabbitmq接收不到消息_分布式消息队列:如何保证消息的可靠性传输
rabbitmq (1)生产者弄丢了数据 生产者将数据发送到rabbitmq的时候,可能数据就在半路给搞丢了,因为网络啥的问题,都有可能. 此时可以选择用rabbitmq提供的事务功能,就是生产者发送 ...
- 用户请求队列化_分布式消息队列选型分析
高并发架构是成为架构师的必修课,而消息队列,则是王冠上最闪亮的那颗明珠!能否驾驭消息队列这款高并发神器,亦成为架构师的试金石.本文将从队列本质.技术选型两个方面,给大家整理下个人心得,希望能对大家有所 ...
- RabbitMQ 中 7 种消息队列
点击关注公众号,Java干货及时送达 七种模式介绍与应用场景 简单模式(Hello World) 做最简单的事情,一个生产者对应一个消费者,RabbitMQ相当于一个消息代理,负责将A的消息转发给B ...
- rabbitmq java实例_RabbitMQ消息队列入门篇(环境配置+Java实例+基础概念)
转载http://blog.csdn.net/u013142781 一.消息队列使用场景或者其好处 消息队列一般是在项目中,将一些无需即时返回且耗时的操作提取出来,进行了异步处理,而这种异步处理的方式 ...
- python消息队列celery高可用_分布式消息队列-Celery
怎么能不恨呢,在我发现自己是恶鬼的时候,在我最绝望最虚弱的时候,这个世上最该跟我在一起的人却用刀把我的心刺穿了 Celery 是 Distributed Task Queue,分布式任务队列.分布式决 ...
- RabbitMQ中7种消息队列和保姆级代码演示!
blog.csdn.net/qq_32828253/article/details/110450249 七种模式介绍与应用场景 简单模式(Hello World) 做最简单的事情,一个生产者对应一个消 ...
最新文章
- 2016/05/03(接口 买票 临界资源同步锁)
- 修改initrd做miniLinux
- golang中的接口
- eclipse常用快捷键汇总
- 简简单单日赚200元,当日结算
- 【学习笔记】Python - NumPy
- 窗体间传值和窗体间互操作
- [译]模型-视图-提供器 模式
- 图论 —— 图的连通性 —— Kosaraju 算法
- 计算机课奖金计算步骤,计算机二级excel真题:计算员工奖金
- EXE反编译方法及工具
- 电梯轿厢预留人脸识别接口和指纹接口_奥的斯电梯 gt;LSFAULT ! 故障现象捕捉
- 手机变速齿轮_变速齿轮手机版下载|变速齿轮游戏加速器官方最新版v1.2下载 _当游网...
- DSP的cmd文件详解
- python:epub文件批量转TXT
- Unity脚本设置Animator单个状态的speed
- 各种内部排序方法及其比较实验报告
- 搜狗输入法 - 自定义短语
- python基础——类型转换
- 小程序中实现关注公众号
热门文章
- 关于CefSharp的坎坷之路
- C# Owin 创建与测试自己的中间件Middleware
- WebConfig 加密解密的原理是什么?
- 博客园首页博问闪存新随笔联系订阅管理 随笔- 252 文章- 0 评论- 45 HashPasswordForStoringInConfigFile中的Md5算法并非常用的Md5算法...
- Hibernate Query Language(HQL)。
- 在linux中完整路径中的目录间分隔符是,路径分隔符(斜杠/与反斜杠\的问题)
- postman发送post请求,服务器日志确保GET请求错误“ PageNotFound:208 Request method ‘GET‘ not supported”
- Json对象与Json字符串的转化、JSON字符串与Java对象的转换
- 云上如何做冷热数据分离
- 举例详解PHP归并排序的实现