[英]What is the best practices to listen/subscribe push notifications from RabbitMQ server?
我使用帶有 NestJs 的微服務架構創建了 2 個獨立的應用程序。 一個是主應用程序(端口 9000),另一個是通知服務(amqp & http 端口 9001)。
我已經使用 RabbitMQ (amqp) 成功觸發了從主應用程序到通知服務的通知。
為了收聽通知,我分離了(端口 3000)前端應用程序(ReactJs)。 我所做的是:
問題是,我覺得直接聽RabbitMq服務器是不行的。
我在想的第三種解決方案是在通知服務中添加 WebSocket,然后前端應用程序(ReactJs)將直接監聽通知服務而不是 RabbitMq。
在這種情況下,最佳做法是什么? 你認為哪一個是最好的,1/2/3? 或者你有其他建議嗎?
謝謝你。
我永遠不會將 RabbitMQ 暴露給前端,因為它並不意味着開放。 RabbitMQ 是為微服務完美設計的,因此多個后端服務可以監聽任何消息。 它並不打算向公眾開放,而只是用於內部網絡中的服務器到服務器通信。
此外,如果您將 RabbitMQ 直接暴露給前端,還會存在相當多的安全問題。 這是一種不好的做法,您應該始終添加一個中間件,在您的情況下是通知服務,在兩者之間收聽 RabbitMQ 並將消息再次推送回客戶端。 您可以為此使用 WebSockets。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.