Kafka學習之七 爲什麼說Kafka使用磁盤比內存快

        Kafka最核心的思想是使用磁盤,而不是使用內存,可能所有人都會認爲,內存的速度一定比磁盤快,我也不例外。在看了Kafka的設計思想,查閱了相應資料再加上自己的測試後,發現磁盤的順序讀寫速度和內存持平。

       而且Linux對於磁盤的讀寫優化也比較多,包括read-ahead和write-behind,磁盤緩存等。如果在內存做這些操作的時候,一個是JAVA對象的內存開銷很大,另一個是隨着堆內存數據的增多,JAVA的GC時間會變得很長,使用磁盤操作有以下幾個好處:

磁盤緩存由Linux系統維護,減少了程序員的不少工作。

磁盤順序讀寫速度超過內存隨機讀寫。

JVM的GC效率低,內存佔用大。使用磁盤可以避免這一問題。

系統冷啓動後,磁盤緩存依然可用。

學習參考

http://www.infoq.com/cn/articles/kafka-analysis-part-1

http://flychao88.iteye.com/category/350737

http://shift-alt-ctrl.iteye.com/blog/1930791

http://www.tuicool.com/articles/mErEZn


發佈了178 篇原創文章 · 獲贊 37 · 訪問量 41萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章