Kafka時間輪的設計

Kafka中存在大量的延遲操做,好比延遲生產、延遲拉取以及延遲刪除等。Kafka並無使用JDK自帶的Timer或者DelayQueue來實現延遲的功能,而是基於時間輪自定義了一個用於實現延遲功能的定時器(SystemTimer)。 JDK的Timer和DelayQueue插入和刪除操做的平均時間複雜度爲O(nlog(n)),並不能知足Kafka的高性能要求,而基於時間輪能夠將插入和刪除操做的時間復
相關文章
相關標籤/搜索