2016-11-02 61 views
12

RabbitMQ ile Websocket üzerinden yay STOMP kullanıyorum. Tüm iyi çalışıyor ama simpMessagingTemplate.convertAndSend çok yavaş çalışıyor, çağrı 2-10 saniye sürebilir (senkronize, blok iplik). Bir sebep ne olabilir?SimpMessagingTemplate.convertAndSmokeMizle Çalışmak çok yavaş çalışıyor

RabbitTemplate.convertAndSend < 1'leri alacak ama üzerinde basmak gerek WebSocket ..

GÜNCELLEME Ben ActiveMQ'yu kullanmayı deneyin ve aynı sonucu alır

. convertAndSend 2-10 saniye arası

ActiveMQ varsayılan yapılandırmaya sahiptir.

Web soket yapılandırma: çözüldü

@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); 
    } 
} 
+0

hangi yay sürümünü kullanıyorsunuz? Dönüşümden önce/sonra bir mesaj örneği verebilir misiniz? –

+0

bahar 1.3.5 kullanın –

cevap

8

Sorun. Io.projectreactor kütüphanesi 2.0.4.RELEASE sürümündeki hatası. 2.0.8.RELEASE ve onun sabit problemine geçiyorum. Mesaj göndermek şimdi ~ 50 ms.

<dependency> 
     <groupId>io.projectreactor</groupId> 
     <artifactId>reactor-net</artifactId> 
     <version>2.0.8.RELEASE</version> 
    </dependency>