我正在使用 Amazon MQ,它是一個托管的 Active MQ 實例。我正在使用這個stomp-php 庫通過 STOMP 與 PHP 連接。我計劃讓這些偵聽器連續運行,如果斷開連接,請重新連接。我擔心的是,出于某種原因,腳本將停止工作,但客戶端不會斷開連接。如果發生這種情況,我將無法使用該客戶端 ID 重新連接,直到另一個客戶端斷開連接。如果發生這種情況,我希望能夠遠程關閉連接。我不知道這是否可以使用 STOMP,但我在 STOMP 文檔中沒有看到任何關于它的信息。似乎一旦您通過 STOMP 連接,您就以客戶端的身份進行連接,并且您所做的一切都與該客戶端相關。我查看了 ActiveMQ 文檔,并在 Artemis(如果 AmazonMQ 是 Artemis 或 Classic,則為 IDK)中看到了closeConnectionWithClientID JMSServerControl 方法。這似乎正是我想要做的,但通過 STOMP 或通過 PHP 的其他方式。有誰知道我將如何實現這一目標?
1 回答

慕慕森
TA貢獻1856條經驗 獲得超17個贊
AmazonMQ 基于 ActiveMQ“經典”5.x 版本。通過 STOMP 客戶端無法強制斷開另一個客戶端,也無法通過任何客戶端協議,因為這將是一個可怕的安全性和可用性問題。
要刪除客戶端,您需要使用 5.x 中的 JMX 管理 API,我確信它已在 AmazonMQ 實例中公開,但這是開始尋找的地方。在 5.x 中,可以使用 Jolokia 公開 JMX API,這樣一旦您對希望配置的管理員角色建立了身份驗證和授權,就可以使用 HTTP 請求來調用它們。
- 1 回答
- 0 關注
- 224 瀏覽
添加回答
舉報
0/150
提交
取消