还是结合实际项目说把,最近在做跟保险公司和第三方借贷平台对接的项目;

其中需要第三方借贷平台借款并和保险挂对勾,也就是每次借钱的时候可以做一次保;

这里面正常情况下的逻辑场景:

借贷平台:借贷审核通过-->接收信息-->保险审核通过-->下发钱款通知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设置多个并行消费者的更多相关文章

  1. activemq设置后台管理用户名密码,及生产者消息密码

    activemq设置后台管理用户名密码,及生产者消息密码 1.修改conf/activemq.xml 在<broker>标签下,找到</shutdownHooks>标签.在这个 ...

  2. ActiveMQ第六弹:设置多个并行的消费者

    消息队列本来就是一种经典的生产者与消费者模式.生产者向消息队列中发送消息,消费者从消息队列中获取消息来消费. 消息的传送一般由一个代理来实现的,那就是Message broker(即消息代理).Mes ...

  3. SpringCloud学习系列之二 ----- 服务消费者(Feign)和负载均衡(Ribbon)使用详解

    前言 本篇主要介绍的是SpringCloud中的服务消费者(Feign)和负载均衡(Ribbon)功能的实现以及使用Feign结合Ribbon实现负载均衡. SpringCloud Feign Fei ...

  4. 白话SpringCloud | 第四章:服务消费者(RestTemple+Ribbon+Feign)

    前言 上两章节,介绍了下关于注册中心-Eureka的使用及高可用的配置示例,本章节开始,来介绍下服务和服务之间如何进行服务调用的,同时会讲解下几种不同方式的服务调用. 一点知识 何为负载均衡 实现的方 ...

  5. activemq消息生产者与消息消费者简单例子

    消息生产者HelloQueueProducer.java package activemq.test; import javax.jms.Connection;import javax.jms.Con ...

  6. 【SpringCloud】第三篇: 服务消费者(Feign)

    前言: 必需学会SpringBoot基础知识 简介: spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选. ...

  7. springcloud(七,多个服务消费者配置,以及zuul网关案例)

    spring cloud (一.服务注册demo_eureka) spring cloud (二.服务注册安全demo_eureka) spring cloud (三.服务提供者demo_provid ...

  8. activeMQ设置admin的用户名和密码

    ActiveMQ使用的是jetty服务器, 打开conf/jetty.xml文件,找到 <bean id="securityConstraint" class="o ...

  9. SpringCloud教程 | 第三篇: 服务消费者(Feign)

    上一篇文章,讲述了如何通过RestTemplate+Ribbon去消费服务,这篇文章主要讲述如何通过Feign去消费服务.一.Feign简介 Feign是一个声明式的伪Http客户端,它使得写Http ...

随机推荐

  1. Jmeter阶梯加压监听

    巧用beanshell,做阶梯加压监听 1. 首先先添加阶梯加压线程组  bzm - Concurrency Thread Group 设置阶梯加压值,目标最大并发用户为80,加速步率时长为100秒, ...

  2. TCP/IP||ARP/RARP

    1.ARP ARP(地址解析协议)主要为IP地址到对应的硬件提供动态映射,过程是自动完成 在网络接口有一个硬件地址(48 bit),在硬件层次上的数据帧交换必须有正确的接口地址,但是32 bit 的I ...

  3. docker 修改实例名称

    docker 容器(服务)重命名只要一个命令就可以: docker rename 原容器名 新容器名 如:

  4. 从头学pytorch(十七):网络中的网络NIN

    网络中的网络NIN 之前介绍的LeNet,AlexNet,VGG设计思路上的共同之处,是加宽(增加卷积层的输出的channel数量)和加深(增加卷积层的数量),再接全连接层做分类. NIN提出了一个不 ...

  5. 2019版Idea如何激活

    1.下载jar包 链接: https://pan.baidu.com/s/1w4B4_hmiiueNDJMjYKaFyQ 提取码: fkpx 2.修改·vmoptions 1.Help" - ...

  6. Java List集合的介绍与常用方法

    List接口的介绍 List接口简介: java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会将实现了List接口的对象称为List集合. 在List集合 ...

  7. 巧用位运算规律 Flags

    找规律 (1 ) &1 =1 (1 ) &2 =0 (1 ) &3 =1 (1 ) &4 =0 (1 ) &5 =1 (1 ) &6 =0 (1 ) & ...

  8. vue+bootstrap4+mybatis分页

    先看效果 Springboot+Mybatis+Pagehelper分页具体实现略. Controller返回数据 @GetMapping("/findByPage") publi ...

  9. MySQL UTF-8 常用字符排序规则

    排序规则 解释 utf8_general_ci 不区分大小写 utf8_general_cs 区分大小写 utf8_bin 区分大小写,字符串每个字符串用二进制数据编译存储,且支持存储二进制数据

  10. 矩形内的递推dp

    链接:https://www.nowcoder.com/acm/contest/130/B来源:牛客网 黑妹和黑弟又聚在一起玩游戏了,这次他们选择在一个n*m的棋盘上玩游戏,棋盘上的每个方格都有一个非 ...