【发布时间】:2017-08-23 19:41:42
【问题描述】:
在tomcat服务器和rabbit mq中使用带有stomp的spring Websockets作为消息代理。
当尝试在没有 RabbitMQ 作为中继代理的情况下运行时,它最多允许大约 10000 个连接。 (基于 tomcat 中允许的最大连接数限制)
当尝试使用 RabbitMQ 作为中继代理(托管在 AWS 中 - 单实例)时,在进行负载测试时,它在一定数量的连接 (4000) 后失败。 (在 RabbitMQ 中将配置文件更改为 - 文件描述符 10000,套接字描述符 8908,内存 2.8 GB)。 stompclient 的心跳设置为零。尝试增加 Java 客户端堆内存。
连接超过 4000 次后失败。在 RabbitMQ 中验证是否有任何限制,或者有什么方法可以进行负载测试?
java.lang.Exception: {message=[Connection to broker closed.], content-length=[0]}
at org.springframework.messaging.simp.stomp.DefaultStompSession.invokeHandler(DefaultStompSession.java:435)
at org.springframework.messaging.simp.stomp.DefaultStompSession.handleMessage(DefaultStompSession.java:421)
【问题讨论】:
标签: websocket rabbitmq spring-rabbit