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

网站seo优化服务网站架构图怎么画

网站seo优化服务,网站架构图怎么画,网站建设的运营计划,黄岛网站建设服务前言#xff1a;在使用RabbitListener注解来指定消费方法的时候#xff0c;默认情况是单线程去监听队列#xff0c;但是这个如果在高并发的场景中会出现很多个任务#xff0c;但是每次只消费一个消息#xff0c;就会很缓慢。单线程处理消息容易引起消息处理缓慢#xff0… 前言在使用RabbitListener注解来指定消费方法的时候默认情况是单线程去监听队列但是这个如果在高并发的场景中会出现很多个任务但是每次只消费一个消息就会很缓慢。单线程处理消息容易引起消息处理缓慢消息堆积不能最大利用硬件资源这个就很伤。 处理办法可以添加配置类设置RabbitMQ的容器工厂参数增加并发处理数量即可实现多线程处理监听队列实现多线程处理消息。 一、编写配置类 package com.quick.config;import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory; import org.springframework.boot.autoconfigure.amqp.SimpleRabbitListenerContainerFactoryConfigurer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.amqp.rabbit.connection.ConnectionFactory;/*** RabbitMQ配置类*/ Configuration /*ConditionalOnClass(RabbitTemplate.class) //有RabbitTemplate依赖才会生效否则不生效*/ public class MqConfig {// 定义线程数、最大线程数常量private static final int INITIAL_CONCURRENT_CONSUMERS 10;private static final int MAX_CONCURRENT_CONSUMERS 10;/*** 将多线程配置配置注入容器工厂*/Bean(customContainerFactory)public SimpleRabbitListenerContainerFactory containerFactory(SimpleRabbitListenerContainerFactoryConfigurer configurer,ConnectionFactory connectionFactory) {SimpleRabbitListenerContainerFactory factory new SimpleRabbitListenerContainerFactory();factory.setConcurrentConsumers(INITIAL_CONCURRENT_CONSUMERS); //设置线程数factory.setMaxConcurrentConsumers(MAX_CONCURRENT_CONSUMERS); //最大线程数configurer.configure(factory, connectionFactory);return factory;}} setConcurrentConsumers(int concurrentConsumers): 这个方法设置了容器应该同时启动的监听器消费者线程的数量。这些线程会并发地从RabbitMQ队列中拉取并处理消息。这个值决定了系统初始时能够并行处理消息的能力。 setMaxConcurrentConsumers(int maxConcurrentConsumers): 这个方法设置了容器在需要时可以增加到的最大并发消费者数量。这通常用于处理负载高峰当队列中的消息积压时可以动态地增加并发消费者数量以提高处理速度。然而请注意这并不意味着系统会立即创建所有最大数量的线程而是会根据需要逐渐增加到这个上限。 这个容器负责监听 RabbitMQ 的队列并将接收到的消息分发给相应的处理器即 RabbitListener 注解标记的方法 二、修改监听者 在接收消息方里面的RabbitListener注解中添加配置 RabbitListener(queues {监听队列名},containerFactory customContainerFactory) /*** 接收消息*/ Component public class StoreListener {Resourceprivate IStoreService storeService;Resourceprivate StoreMapper storeMapper;/*** 更新店铺收藏人数实现收藏人数1* param storeId 店铺id*/RabbitListener(bindings QueueBinding(value Queue(name store.addFavorite.success.queue, durable true), // 队列 起名规则服务名业务名成功队列durable持久化exchange Exchange(name addFavorite.direct), // 交换机名称交换机默认类型就行direct所以不用配置directkey addFavorite.success // 绑定的key),// 在RabbitListener注解中指定容器工厂containerFactory customContainerFactory)public void listenAddFavoriteCountsSuccess(Long storeId){storeService.updateStoreFavoriteUsersCountAdd1(storeId);}/*** 根据传过来的店铺实体类修改店铺信息* param store 店铺实体类*/RabbitListener(bindings QueueBinding(value Queue(name store.updateStore.success.queue, durable true),exchange Exchange(name updateStore.direct),key updateStore.success),// 在RabbitListener注解中指定容器工厂containerFactory customContainerFactory)public void updateStoreByEntity(Store store){storeMapper.updateById(store);}} 多线程的好处 1、提高吞吐量通过并行处理消息系统可以更快地处理大量消息从而提高整体吞吐量。 2、更好的资源利用率在多核处理器上多线程可以更好地利用硬件资源减少处理延迟。
http://www.w-s-a.com/news/254093/

相关文章:

  • 小白建站怎么撤销网站备案
  • 哪个网站做调查问卷赚钱短视频制作神器
  • 上海企业响应式网站建设推荐汕头网络优化排名
  • 怎么建立公司网站平台怎么将网站做成公司官网
  • 培训学校网站怎样快速建设网站模板
  • 建设电子商务网站论文云服务器安装wordpress
  • 做展板好的网站学校的网站开发过程
  • 宁波搭建网站价格西部数码网站正在建设中是什么意思
  • 吉林省建设项目招标网站苏州网络推广定制
  • 网站域名所有权证明引流推广接单
  • 做网站百度百科孟州网站建设
  • 服务网站建设企业广州模板建站系统
  • 怎么做属于自己的免费网站浏览器游戏网址
  • 上海城乡住房建设厅网站西安网站推广慧创科技
  • 做策划网站推广怎么写简历互联网公司手机网站
  • 怎么做宣传网站网站建设采购项目合同书
  • 网站的空间和域名备案做网站要会写什么
  • wap 网站源码企业网站被转做非法用途
  • 下载网站模板怎么使用做物流网站的公司
  • 网站 商城 app 建设建设银行江苏省行网站
  • 广州网站开发建设西安广告公司联系方式
  • 怎么用腾讯云服务器做网站个人网站开发视频
  • 网站建设技术代码坦洲网站建设公司哪家好
  • 阿里云对象存储做静态网站怎样做网站性能优化
  • 怎样做理财投资网站装修平面图用什么软件简单
  • 建手机wap网站大概多少钱苏州网站设计公司有哪些
  • 网站建设需求文件学校网站建设方案及报价
  • 网站开发一般多少钱wordpress打赏赞插件
  • 做中国o2o网站领导唐山网站制作软件
  • 门户网站简介做网站一天能接多少单