簡體   English   中英

暫停lmax干擾器內部的處理?

[英]Pause the processing inside lmax disruptor?

我想使用 Lmax Disruptor 進行性能測試:

  • 配置dusruptor
  • 以某種方式“暫停”處理
  • 向 RingBuffer 添加許多消息
  • “取消暫停”處理

這樣我就可以清楚地測量緩沖區變空的速度。 如果我“混合”添加許多消息(這會引入一些延遲)和處理,我可能對處理速度的結果不太確定。

然而,我似乎沒有在 LMAX Disruptor ( https://lmax-exchange.github.io/disruptor/docs/com/lmax/disruptor/dsl/Disruptor.html ) 中找到可用的“暫停”,有沒有辦法做一個?

答案在很大程度上取決於暫停破壞者的含義。

您可以輕松地讓消費者在到達第nth消息之前不釋放環形緩沖區中的插槽。 然而,排空環形緩沖區所需的時間完全取決於消費者的速度。

但是,如果您希望對破壞者本身的成本進行基准測試,那將是一個復雜得多的命題。 我將從調查破壞者項目自己的性能測試開始。

在突發工作負載中,破壞者的批處理效果實際上可能會通過分攤昂貴操作(例如網絡或磁盤 IO)的成本來提高吞吐量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM