2017-01-02 99 views
0

我試圖瞭解如何使用org.apache.cassandra.metrics:type=Messaging度量標準。我設置了3個數據中心,每個數據中心都有1個節點。當我測量度量,對每個節點我得到2橫數據中心的度量和1跨節點延遲度量如下(爲節點在DC-2)瞭解卡桑德拉消息延遲度量標準

org.apache.cassandra.metrics:type=Messaging,name=dc3-Latency 
5.3387457013878636E7 
org.apache.cassandra.metrics:type=Messaging,name=CrossNodeLatency 
1.1471964354991291E8 
org.apache.cassandra.metrics:type=Messaging,name=dc1-Latency 
1.6108579786605054E8 

然而,我使用羣集目前沒有進程。 Cassandra是否做了一個虛擬寫入來衡量這個度量?此外,這裏的跨節點延遲度量指的是什麼,每個DC只包含一個節點。

回答

0

度量記錄外來使用消息服務萬物延遲。消息服務用於讀/寫,但它也用於流式傳輸和八卦。閒話在所有節點之間每隔1秒發射一次,所以這可能在你的情況中佔據主導地位。在某些情況下,有些表甚至可能會寫入(system_distributed,system_traces和某些使用dse的dse表),甚至在某些情況下甚至會出現相當閒置的系統。

每當一個消息從一個節點發送到另一個節點時,它會附加一個時間戳以及一些版本信息。接收系統將做的第一件事(忽略明顯的os/socket/etc)或多或少比較該時間戳到「now」。這是衡量指標的原因。然後,它會查看數據中心的來源,以確定哪些度量標準要增加多少。