WebSockets, Sockjs, Stomp, Spring, RabbitMQ, eliminar las colas específicas del usuario automáticamente

StackOverflow https://stackoverflow.com//questions/25018814

Pregunta

Espero que alguien pueda ayudarme con este problema: utilizo el soporte de STELDSocket de la primavera.Con sockjs y stompjs, suscribo una cola como esta:

    var socket = new SockJS(localhost + 'websocket');
    stompClient = Stomp.over(socket);
    stompClient.connect('', '', function(frame) {
        stompClient.subscribe("/user/queue/gotMessage", function(message) {
            gotMessage((JSON.parse(message.body)));
        });
    }, function(error) {
    });

Esto funciona muy bien con las simpMessagessingeroperations de la primavera.Pero hay un gran problema.El nombre de la cola se ve así: gotmessage-user3w4tstcj y no se declara como una cola de eliminación automática, pero esto es lo que quiero.De lo contrario tengo 10k de colas no utilizadas.En ese momento, donde la cola no tiene consumidor, la cola debe ser eliminada.¿Cómo puedo asumir esto?

¿Fue útil?

Solución

tuvo el mismo problema, de la documentación:

RabbitMQ crea colas de eliminación automática cuando los destinos como /exchange/amq.direct/position-updates se utilizan.Así que en ese caso el El cliente podría suscribirse a /user/exchange/amq.direct/position-updates

Recuerde agregar '/exchange/' como prefijo de destino en la configuración del relé de broker STOMPT

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top