当前位置: 首页 > news >正文

招聘网站开发时间代运营

招聘网站开发时间,代运营,企业网站优化服务公司,百度手机助手下载2022新版📝个人主页:五敷有你 🔥系列专栏:MQ ⛺️稳中求进,晒太阳 Work Queues Work queues任务模型,简单来说就是让多个消费者绑定到一个队列,共同消费队列中的消息 当消息处理比较耗时的时候&…

       📝个人主页:五敷有你      

 🔥系列专栏:MQ

⛺️稳中求进,晒太阳

Work Queues

Work queues任务模型,简单来说就是让多个消费者绑定到一个队列,共同消费队列中的消息

当消息处理比较耗时的时候,可能生产消息的速度会远远大于消息的消费速度。长此以往,消息就会堆积越来越多,无法及时处理。

此时就可以使用work 模型,多个消费者共同处理消息处理,消息处理的速度就能大大提高了。

消息发送

这次我们循环发送,模拟大量消息堆积现象。

在publisher服务中的SpringAmqpTest类中添加一个测试方法:

@Autowired
private RabbitTemplate rabbitTemplate;@Test
void testSendMessage2Queue() throws InterruptedException {String queueName1 = "work.queue";for(int i=0;i<50;i++){String msg = "Hello Work.Queue 编号:"+i;rabbitTemplate.convertAndSend(queueName1, msg);Thread.sleep(20);}}

消息接收

要模拟多个消费者绑定同一个队列,我们在consumer服务的SpringRabbitListener中添加2个新的方法

@RabbitListener(queues = "work.queue")
public void listenWorkQueue1(String msg) throws InterruptedException {System.out.println("消费者1收到了work.queue的消息:【" + msg +"】");Thread.sleep(5);
}
@RabbitListener(queues = "work.queue")
public void listenWorkQueue2(String msg) throws InterruptedException {System.err.println("消费者1收到了work.queue的消息:【" + msg +"】");Thread.sleep(50);
}

注意到这两消费者,都设置了Thead.sleep,模拟任务耗时:

  • 消费者1 sleep了5毫秒,相当于每秒钟处理200个消息
  • 消费者2 sleep了50毫秒,相当于每秒处理20个消息

消息是平均分配给每个消费者,并没有考虑到消费者的处理能力。导致1个消费者空闲,另一个消费者忙的不可开交。没有充分利用每一个消费者的能力,最终消息处理的耗时远远超过了1秒。这样显然是有问题的。

能者多劳

spring:rabbitmq:listener:simple:prefetch: 1 # 每次只能获取一条消息,处理完成才能获取下一个消息

再次测试,发现结果如下:.

可以发现,由于消费者1处理速度较快,所以处理了更多的消息;消费者2处理速度较慢,只处理了6条消息。而最终总的执行耗时也在1秒左右,大大提升。

正所谓能者多劳,这样充分利用了每一个消费者的处理能力,可以有效避免消息积压问题。

总结

Work模型的使用:

  • 多个消费者绑定到一个队列,同一条消息只会被一个消费者处理
  • 通过设置prefetch来控制消费者预取的消息数量
http://www.sczhlp.com/news/54595/

相关文章:

  • 盱眙在仕德伟做网站的有几家免费开店的平台有哪些
  • 网站速度慢wordpress洛阳工程建设信息网站
  • 如何在iis下建设网站台山网站定制
  • 自动下单网站开发服务器网站维护
  • 肉多各种地方做的网站珲春市建设局网站是多少
  • 网站主机提供商知名中文网站建设
  • 公司主页网站制作北京团建网站
  • 相机网站建设规划书修改wordpress数据库配置文件
  • 网站项目开发流程郑州冬青街 网站建设
  • 百度云 做网站室内装修网站html源码 企业
  • 做培训网站wordpress首页自定义缩略图
  • 苏中建设 网站网站站外优化怎么做
  • 长春做公司网站python基础教程第二版
  • 苏州建设交易中心网站网站建设陆金手指下拉贰拾
  • 企企业业网网站站建建设设石家庄网站制作公司哪家好
  • 网站建设 枫子科技徐汇网站开发
  • 深圳一元购网站设计公司html网页设计代码教程
  • 自建站外贸平台有哪些比较好北京中小企业建站价格
  • 百度双站和响应式网站的区别城市建设档案馆网站
  • 做公益的网站电商公司简介
  • 网站后台更新后主页没有变化海山免费网站建设
  • 昆明著名网站绍兴建站模板系统
  • 成都网站建设推来客网站系统网站模版防被偷
  • 宁波网站推广公司报价网站里怎样添加关键词
  • 做a图片视频在线观看网站做网络主播网站违法吗
  • 网站域名在哪里查询免费建设网站的方法
  • 一个网站项目多少钱汽车网站的建设方向
  • 傻瓜自助建站软件做公司网站有什么好处
  • 法库综合网站建设方案唐朝网站的地址
  • 网站域名一年大概多少html网页设计网站开发报告