1.如何為主題選定分割槽數量:
為主題選定分割槽數量並不是 一 件可有可無的事情,在進行數量選擇時,需要
考慮如下幾個因素。
· 主題需要達到多大的吞吐量?例如,是希望每秒鐘寫入 100kb 還是!1gb? . 從單個分割槽讀取資料的最大吞吐量是多少?每個分割槽 一般都會有乙個消費 者,如果你知道消費者將資料寫入資料庫的速度不會超過每秒 50mb,那
麼你也該知道,從乙個分割槽讀取資料的吞吐量不需要超過每秒 50mb。
· 可以通過類似的方法估算生產者向單個分割槽寫入資料的吞吐量,不過生產
者的速度一般比消費者快得多,所以最好為生產者多估算一些吞吐量。
· 每個 broker 包含的分割槽個數、可用的磁碟空間和網路頻寬。
· 如果訊息是按照不同的鍵採寫入分割槽的,那麼為已有的主題新增分割槽就會
很困難。
· 單個 broker對分割槽個數是有限制的,因為分割槽越多,占用的記憶體越多,完
成首領選舉需要的時間也越長。
2.kafka伺服器網路調優
預設情況下,系統核心沒有針對快速的大流量網路傳輸進行優
化, 所以對於應用程式來 說,一般需要對
linux
系統的網路技進行調優,以實現對大流量的支援。
(1)socke
t讀寫緩衝區
首先可以對分配給 socket讀寫緩衝區的記憶體大小作出調整,這樣可以顯著提公升網路的傳 輸效能。 socket讀寫緩衝區對應的引數分別是net.core.wmem_default和 net.core.rmem_default,合理的值是 131 072 (也就是 128kb)。讀寫緩衝區最大值對應的引數分別是 net.core.wmem_max和 net.core.rmem_max,合理的值是 2 097 152 (也就是 2mb)。要注 意,最大值井不意味著每個 socket一定要有這麼大的緩衝空間,只是說在必要的情況下 才會達到這個值。
(2)設定
tcp socke
t的讀寫緩衝區
引數分別是 net.i.pv4. tcp_wmem和 net.i.pv4.tcp_rmem。這些引數的值由 3個整數組成,它們使用空格分隔,分別 表示最小值、預設值和最大值。最大值不能大於net.core.wmem_max和 net.core.rmem_max指定的大小。例如,「4096 65536 204800」表示最小值是 4kb 、預設值是 64kb 、最大值 是 2mb。根據 kafka伺服器接收流量的實際情況,可能需要設定更高的最大值,為網路連 接提供更大的緩衝空間。
(3)其他引數
還有一些其他的網路引數
例如, 把 net.i.pv4.tcp_window_scaling 設為 l,啟用 tcp 時間窗擴充套件,可以提公升客戶端傳輸資料的效率,傳輸的資料可以在伺服器端進行緩衝 。把net.1.pv4.tcp_max_syn_backlog設為比預設值 1024更大的值,可以接受更多的井發連線。 把 net.core.netdev_max_backlog 設為比預設值 1000 更大的值,有助於應對網路流量的爆 發 ,特別是在使用千兆網路的情況下,允許更多的資料報排隊等待核心處理。
《HTTP權威指南》閱讀筆記
歷時兩個多月,終於把經典圖書 http權威指南 讀完了。雖然看上去厚厚的一本,實際上只要有一些計算機網路基礎,讀起來還是很順利的,並沒有想象中那麼難啃。全書講的很細緻,涵蓋了http的方方面面,其中有一些都是些眾所周知的常識,比如前幾張關於http的基本介紹 url與資源等,但是也值得讀一讀,能夠把...
hadoop權威指南閱讀 一
1.任務 查詢所有年份最高氣溫 map的目的是吐出點對,年份 氣溫 output.collect new text year new intwritable airtemperature key可以重複,例如可以是 1950 23 1950 22 1950 28 2 maxtemperaturere...
《HTTP權威指南》閱讀筆記(六)
一 對http 進行解釋,將其與web閘道器進行對比,並說明如何部署 http的 伺服器 分為公共 和私人 是代表客戶端是代表客戶端完成事務的中間人,既是web伺服器又是web客戶端。http客戶端會向 傳送請求報文,伺服器必須向web伺服器一樣,正確的處理請求和連線,然後返回響應。同時,自身要向伺...