我希望我的兩個JVM應用程序在同一臺機器上互相對話。我考慮使用RMI,但後來我發現Chronicle Queue聲稱它非常快。我想知道是否可以使用Chronicle在其他JVM上調用方法並等待返回值。有沒有用例呢?Can Chronicle隊列可以像RMI一樣使用嗎?
1
A
回答
1
這是可行的,但可能是矯枉過正(尤其是如果你不必保留請求/響應的歷史記錄)。想象一下兩個進程的簡單場景:C(客戶端)和S(服務器)。創建兩個IndexedChronicles
:發送從C
請求S
Q2
從S
發送到C
服務器響應
Q1
有一個線程是輪詢(忙自旋與回退)在Q1
。當接收到一個請求(與id=x
它的任何需要,並寫出反應Q2
(與id=x
。C
民調Q2
一些政策,因爲他們似乎讀出響應。它使用id
綁到請求的響應。主要任務是爲客戶端設計一個用於串行化命令(相當於方法調用)的線級協議,這是應用程序特定的,可以通過Chronicle工具高效地完成。
- 客戶應該如何處理啓動時的歷史響應?
- 一些心跳系統,使客戶端知道服務器是活着的老隊列
- 歸檔(
VanillaChronicle
在一定的成本使得它更容易)
+0
我同意你,這是一個矯枉過正。我決定使用RMI。它使我免受你提到的許多麻煩。 – Hakan
相關問題
- 1. 像glyphicon一樣可以使用svg嗎?
- 2. Chronicle V4 - 同時寫在同一個Chronicle隊列安全
- 3. Maven Central的Chronicle隊列
- 4. Bootstrap 4列可以像Bootstrap 3一樣使用float類型嗎?
- 5. Can Less CSS可以像SASS那樣做數學嗎?
- 6. Can Instruments可以使用命令行嗎?
- 7. Can ViewerSupport.bind()可以與圖像結合使用嗎?
- 8. Can RowSets可與PreparedStatements一起使用嗎?
- 9. 我可以像使用localstorage一樣使用Amplify.js嗎?
- 10. Can TortoiseSVN(或SVN)可以像Mercurial一樣執行批處理?
- 11. perl可以像python一樣乘以一個字符串嗎?
- 12. JavaScript可以像Windows一樣排序嗎?
- 13. Can Derby可以與Phonegap一起使用嗎?
- 14. Can Git和iCloud Drive可以有效地一起使用嗎?
- 15. Can Meteor可以與PaaS服務一起使用嗎?
- 16. 域可以像MySQL一樣使用
- 17. Can類可以相互引用嗎?
- 18. Can Django可以用於Web服務嗎?
- 19. Can R可以用於GIS嗎?
- 20. 預編譯頭可以像庫一樣使用嗎?
- 21. 我可以像register_shutdown_function一樣使用fastcgi_finish_request()嗎?
- 22. Python的argparse排列順序可以像gnu getopt一樣嗎?
- 23. 可以像數據庫一樣的數組列表功能嗎?
- 24. 您可以使用WMI創建MSMQ消息隊列(PRIVATE隊列)嗎?
- 25. 讀取編寫在Chronicle隊列中的最後一個元素
- 26. CruiseControl項目可以放入隊列嗎?
- 27. 可以使用Rails的ActiveJob來排隊一段代碼嗎?
- 28. 在HangFire中,我可以使用隊列名稱而不是使用隊列屬性來排隊嗎?
- 29. 可以生成可以像xsd.exe一樣使用
- 30. 爲什麼Java對象可以像鎖和條件隊列一樣工作?
我看不到任何基於磁盤的系統如何能夠更快比非基於磁盤的系統,或爲什麼你會認爲,否則。 – EJP
它使用共享內存。磁盤僅用於最終持久性。只要你有很多的RAM,並且活動時間較短,可以將髒頁面刷新到磁盤上,它的速度就會非常快。 – Anonymous