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