我在Amazon EC2內部有多個應用程序實例,每個實例運行多個工作進程。我想要的是每個工作進程都訂閱了一些通知(例如配置更改)。這個通知應該基本上是廣播消息,所以一旦發送 - 工作人員每收到一個。AWS:在多個實例上運行多個工作進程的廣播通知
我知道SQS不支持廣播消息。通過類似的問題/線索看,我看到使用SNS而不是SQS的建議。由於以下原因,我不確定這對我有用:
- 應用程序實例是自動縮放組的一部分,因此可以動態添加和刪除它們。在這種情況下,我沒有看到任何明確的方式來取消訂閱每個工作人員(每個實例有多個工作人員),一旦實例終止,這意味着我會在一段時間後結束死亡訂戶的混亂。
- 用於訂閱的協議也不清楚。 HTTP端點看起來是唯一的選項,這意味着我的每個工作人員都應該在自己的端口上運行HTTP服務器。它也看起來我應該只聽取實例公共IP,這增加了一層複雜性和不安全性。
目前我有一個基於第三方的解決方案 - 我使用的是0MQ pub/sub服務器。但是我正在尋找AWS提供的一些開箱即用的解決方案。
感謝, Vovan
您的Kinesis解決方案是否適合您的預期用途。我假設你想註冊多個監聽器來監聽Kinesis Stream,並且你想發送單個消息給Kinesis流,並且希望每個監聽器都可以對它進行操作 –