2017-02-13 21 views
0

我已經運行ActiveMQ,它通過stomp端口與20000 +服務器同時連接發佈和使用消息。 activemq服務器運行8CPU和32G內存。我已將JVM最大內存分配爲-Xmx16384m。但是,當所有的服務器都與這個ActiveMQ連接時,服務器會被加載,虛擬內存的使用量大約爲21G,CPU利用率大約是500次。activemq調整爲20000個線程

不確定JVM是否使用這個activemq中使用的那麼多或任何其他進程,並嘗試使用很多調節並且沒有改進。

回答

0

也許你應該重新考慮這個架構。如果你真的需要這麼多的服務器,你可能想嘗試一個非阻塞消息總線,如ActiveMQ Artemis。我不確定在你的設置下它支持多少STOMP客戶端,但值得一試。保持這麼多客戶端的獨立線程將會產生巨大的內存佔用,我認爲Artemis會更好地處理這種情況。不知道STOMP。