Designing Complex Notification system in spring

2019-06-02 10:02发布

问题:

I want to design and implement a complex notification system where I have a user which will be automatically and manually subscribed to different events.

After some research I made up my mind to go with websockets for pushing the notifications to client, and for subscribing the events I would go for RabbitMQ specifically I would go for direct exchange.

At first thoughts I was thinking after establishing the websocket connection I would send the userId which will be subscribed with the exchange in the RabbitMQ, any change will be sent with the userId of this change and that is how I would get the change and push it to the client.

With this approach I will end up having queues for amqp as many users as I have , I am not sure if this is a good practice.

Your thoughts are appreciated