l JAVA平台异步消息模块 JAVA平台异步消息模块,是一个针对RabbitMQ的消息发送及处理封装,包含消息的配置.发送.接收.失败重试.日志记录等,总共分为4个部分: 1)RabbitMQ访问封装:JAMQP(Jar包) 2)消息模块公共对象.配置读取及接口定义:JMSG(Jar包) 3)消息发送端:JMSG—Client(Jar包) 4)消息接收端:JMSG—Server(War包) l RabbitMQ简介 MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断的写入消息…
线上某服务 A 调用服务 B 接口完成一次交易,一次晚上的生产变更之后,系统监控发现服务 B 接口频繁超时,后续甚至返回线程池耗尽错误 Thread pool is EXHAUSTED.因为服务 B 依赖外部接口,刚开始误以为外部接口延时导致,所以临时增加服务 B dubbo 线程池线程数量.配置变更之后,重启服务,服务恢复正常.一段时间之后,服务 B 再次返回线程池耗尽错误.这次深入排查问题之后,才发现 Kafka 异步发送消息阻塞了 dubbo 线程,从而导致调用超时. 一.问题分析 Dub…