springcloud ActiveMQ设置多个并行消费者
还是结合实际项目说把,最近在做跟保险公司和第三方借贷平台对接的项目;
其中需要第三方借贷平台借款并和保险挂对勾,也就是每次借钱的时候可以做一次保;
这里面正常情况下的逻辑场景:
借贷平台:借贷审核通过-->接收信息-->保险审核通过-->下发钱款通知APP执行出单;
APP:出单{保单创建-->保单核保-->保单支付-->保单承保-->回调通知完成}
其中核保、支付、承保都是对接的保险公司内部接口,他们这几个接口耗时分别是保单创建小于1s、核保1-3s、支付2-5s、承保1-3s,大致走完一个下单流程最快需要5s左右;
出单接口用消息队列完全能hold住,刚开始测的时候没任何问题(此时还没有设置并行消费者个数),等上线之后第三方借贷平台大量放单进来导致这一个队列卡了几千条出单数据,等最后一单执行完毕,接收队列的时间是15:00:00,消费的时间是16:30:13,中间竟然隔了1个小时,导致钱被用户取走,并未扣费成功;
设置并行消费者我知道的有2种方式,可能还有其他的;
方式一:
在配置文件上直接做设置,jms是一个标准或者说是一个协议,activemq是jms的一种实现,所以配置spring jms监听就可以
yml文件:
spring:
jms:
listener:
max-concurrency: 10
concurrency: 6
concurrency当前并行消费者数量;
max-concurrency当前并行消费者数量达到6之后会再开至最大10;
properties文件
spring.jms.listener.concurrency=6
spring.jms.listener.maxConcurrency=10
方式二:
在注解上设置,这个比较灵活,可以根据某个消费者的应用场景去设置
@JmsListener(destination = "issuePolicy", concurrency = "6")
concurrency设置当前并行消费者数量;
未设置并行消费者之前日志打印情况:
设置并行消费者之后日志打印情况:
转载请注明出处,谢谢!
现在人的素质都没有了,辛辛苦苦做的东西都被转载,又不注明出处,稍微改点东西就美其名曰自己原创?笑死我了,不屑于跟你计较;
上面这人某n抄袭地址:https://blog.csdn.net/u014209975/article/details/78599961
本人原创地址:https://www.cnblogs.com/zhouyantong/p/7682941.html
springcloud ActiveMQ设置多个并行消费者的更多相关文章
- activemq设置后台管理用户名密码,及生产者消息密码
activemq设置后台管理用户名密码,及生产者消息密码 1.修改conf/activemq.xml 在<broker>标签下,找到</shutdownHooks>标签.在这个 ...
- ActiveMQ第六弹:设置多个并行的消费者
消息队列本来就是一种经典的生产者与消费者模式.生产者向消息队列中发送消息,消费者从消息队列中获取消息来消费. 消息的传送一般由一个代理来实现的,那就是Message broker(即消息代理).Mes ...
- SpringCloud学习系列之二 ----- 服务消费者(Feign)和负载均衡(Ribbon)使用详解
前言 本篇主要介绍的是SpringCloud中的服务消费者(Feign)和负载均衡(Ribbon)功能的实现以及使用Feign结合Ribbon实现负载均衡. SpringCloud Feign Fei ...
- 白话SpringCloud | 第四章:服务消费者(RestTemple+Ribbon+Feign)
前言 上两章节,介绍了下关于注册中心-Eureka的使用及高可用的配置示例,本章节开始,来介绍下服务和服务之间如何进行服务调用的,同时会讲解下几种不同方式的服务调用. 一点知识 何为负载均衡 实现的方 ...
- activemq消息生产者与消息消费者简单例子
消息生产者HelloQueueProducer.java package activemq.test; import javax.jms.Connection;import javax.jms.Con ...
- 【SpringCloud】第三篇: 服务消费者(Feign)
前言: 必需学会SpringBoot基础知识 简介: spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选. ...
- springcloud(七,多个服务消费者配置,以及zuul网关案例)
spring cloud (一.服务注册demo_eureka) spring cloud (二.服务注册安全demo_eureka) spring cloud (三.服务提供者demo_provid ...
- activeMQ设置admin的用户名和密码
ActiveMQ使用的是jetty服务器, 打开conf/jetty.xml文件,找到 <bean id="securityConstraint" class="o ...
- SpringCloud教程 | 第三篇: 服务消费者(Feign)
上一篇文章,讲述了如何通过RestTemplate+Ribbon去消费服务,这篇文章主要讲述如何通过Feign去消费服务.一.Feign简介 Feign是一个声明式的伪Http客户端,它使得写Http ...
随机推荐
- 用WPF实现大数据分析,超炫的效果,还带地图
开头语 经过一段时间研究,终于实现CS和BS相同效果的大数据展示平台了.首先来看看实现的效果,超炫的效果,客户特别喜欢,个人也非常满意,分享给各位,同大家一起交流学习. 大数据展示平台 从上图可以看出 ...
- DOCKER学习_009:Docker的镜像管理
1 查看镜像 [root@docker-server3 ~]# docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE redis days ago ...
- redis 本地安装
1.redis介绍 Redis是有名的NoSql数据库,一般Linux都会默认支持.但在Windows环境中,可能需要手动安装设置才能有效使用.简单介绍一下Windows下Redis服务的安装方法. ...
- 基于ambassador实现K8S灰度发布
为什么需要灰度发布 灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式.在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对 ...
- Python学习3月5号【python编程 从入门到实践】---》笔记
---恢复内容开始--- 1.变量 一.只能包含字母.数字.下划线.****不能以数字开头作变量 二.不能包含空格, 三.不要将python关键字和函数名用作变量名 四.最好能有描述性和简短的特征 五 ...
- 关于KMP的一点思考
关于KMP的一点思考 KMP的\(next\)数组的性质很精妙,有必要开一个坑学习一下 Part 1 啥是next \(next[i]\)表示对于\(pre_i\)这个字符串,这个抠出来的字符串本身后 ...
- 2020 年 Java 程序员应该学习什么?
大家好,我相信大家在新的一年都有一个良好的开端,并准备好制定一个提升自我技术的目标.作为 Java 开发人员,我还制定了一些目标,希望在今年成为一名更好的 Java 开发人员. 如果你尚未制定目标,这 ...
- 变量键盘读取、数组与宣告:read,array,declare
1.read 2.declare/typeset 宣告变量的类型 3.数组(array)变量类型 4.与文件系统及程序的限制关系:ulimit 限制用户的某些系统资源,包括,可以开启的文件的数量,可以 ...
- tantivy&lucene功能,写入性能对比
硬件概述:cpu:24,内存:20g,磁盘:10*2.7T. 写入性能:(不对ip进行添加geo信息). 写入性能对比 速度 Commit耗时(秒) 500*1000条 Bulk耗时(秒) 1000条 ...
- 基于Netty和SpringBoot实现一个轻量级RPC框架-协议篇
基于Netty和SpringBoot实现一个轻量级RPC框架-协议篇 前提 最近对网络编程方面比较有兴趣,在微服务实践上也用到了相对主流的RPC框架如Spring Cloud Gateway底层也切换 ...