2016-06-07 33 views
0

我們正在嘗試Chronicle HFT作爲低延遲消息黑白組件概念的證明。我們正在使用編年史-1.7.2.jar可選編年史索引和數據文件

我們有一個讀者和作家,作家不斷寫作摘錄到編年史和讀者不斷閱讀它在一個繁忙的while循環。

我們無法在epoll上掛接閱讀器,並在歷史記錄文件中存在可用數據時使其可選。通常我們選擇DatagramChannel數據可用性。

請注意如何讓讀寫器選擇並在有記錄數據時註冊回調。

回答

2

Chronicle Queue的一個關鍵特性是它儘可能避免涉及操作系統。即使一次系統調用通常需要10倍,只要在進程之間傳遞簡單的消息即可。

就你而言,你可以添加一個後臺線程來監視隊列並觸發Selector喚醒。

我會建議使用紀事隊列v4.4.3(或最新)

http://search.maven.org/#search%7Cga%7C1%7Cchronicle%20queue

尤其是我建議你閱讀我的微服務的職位。

http://vanilla-java.github.io/tag/Microservices/

+0

謝謝彼得。我同意系統調用是非常慢的黑白過程。但是我們正在使用單線程應用程序。每個核心一個VM。有什麼建議麼?我無法找到關於編年史的很多文檔,你可以指點我除gitbut以外的其他來源列出一個 –

+0

@SrujanKumarGulla我將以github文檔和單元測試爲例作爲開始。 https://github.com/OpenHFT/Chronicle-Queue有關微服務和示例程序的文章包含大部分需要了解的代碼。 –