在我的Java應用程序中的數據轉換,我有相當大量的數據坐在的ConcurrentHashMap的。
現在,當客戶端通過TCP端口連接到我的應用程序時,我需要以XML格式將此數據提供給客戶端客戶端。
所以簡而言之 - 我有一個客戶端連接到的TCP服務器。一旦客戶端連接,我必須讀取Map中的所有數據,並在TCP端口上以XML格式(自定義)將其吐出。 Map中的數據使用工作線程等從其他地方自動更新,因此我必須不斷地將新數據反覆發送到此tcp端口上的客戶端。
我想實現一個內存和CPU高效的解決方案 - 主要是我不希望在堆中生成太多不可變對象。 。
注:將來我可能不得不支持多種輸出格式(如逗號分隔或Json或HL7等)。爲了簡單起見,可以說客戶端可以連接一個特定格式的TCP端口。
問題
雖這麼說 - 我一直在四處尋找從一個ConcurrentHashMap到XML我TCP服務器執行和數據轉換過程中的最佳解決方案。
對於TCP服務器,人們談論
我的客戶將一些第三方的,所以我覺得KRY因爲客戶不會做Kryonet所需的「註冊」業務。那麼,從MINA和NETTY中,哪一個可以擴展並且更容易理解?任何其他建議?
對於從ConcurrentHashMap到XML的數據轉換,我正在考慮使用XSTREAM 任何其他建議?
感謝
:我的要求是不斷向連接的客戶端提供數據。理想情況下,客戶端可以連接數天,從服務器接收最新的數據。所以我不確定tomcat是否會這樣做。 – FatherFigure
你應該看看阿卡。 – Kevin
好的,謝謝,我會的 – FatherFigure