我正在用RabbitMQ在Websocket上使用spring。所有工作正常,但simpMessagingTemplate.convertAndSend工作非常慢,调用可能需要2-10秒(同步,阻塞线程)。有什么理由??
RabbitTemplate.convertAndSend采取< 1s,但我需要踩过websocket..。
更新
我尝试使用ActiveMQ并获得相同的结果。convertAndSend需要2-10秒
ActiveMQ具有默认配置。
配置:
@Configuration
@EnableWebSocket
@EnableWebSocketMessageBroker
class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer {
@Override
void configureMessageBroker(MessageBrokerRegistry config) {
config.enableStompBrokerRelay("/topic", "/queue", "/exchange");
config.setApplicationDestinationPrefixes("/topic", "/queue"); // prefix in client queries
config.setUserDestinationPrefix("/user");
}
@Override
void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/board").withSockJS()
}
@Override
void configureWebSocketTransport(WebSocketTransportRegistration registration) {
registration.setMessageSizeLimit(8 * 1024);
}
}
发布于 2017-02-24 17:20:22
问题解决了。它在io.projectreactor库版本2.0.4中的错误。我更改为2.0.8。现在发送信息需要50毫秒。
<dependency>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-net</artifactId>
<version>2.0.8.RELEASE</version>
</dependency>
https://stackoverflow.com/questions/40380069
复制相似问题