針對Kafka的centos系統參數優化

TCP網絡優化

sudo vim /etc/sysctl.confhtml

vm.max_map_count=655360
net.core.rmem_default=262144
net.core.rmem_max=2097152
net.core.wmem_default=262144
net.core.wmem_max=2097152
#net.core.somaxconn = 655360
#該值在inet_listen()函數中被限制爲不得超過USHRT_MAX(即65535),不然會報錯「sysctl: setting key "net.core.somaxconn": 無效的參數」
net.core.somaxconn = 65535vim

執行 sudo sysctl -p 生效
查看當前已生效的參數: sudo sysctl -a | grep ${param}緩存

進程級資源限制優化  

 sudo vim /etc/security/limits.conf | /etc/security/limits.d/90-nproc.confbash

修改文件是重啓進程 | 持久化生效。對徹底相同的參數配置項,/etc/security/limits.d/90-nproc.conf 會覆蓋掉 /etc/security/limits.conf網絡

* soft nofile 655360
* hard nofile 655360
* soft nproc 8096
* hard nproc 8096

修改進程限制當即生效(臨時)app

sudo prlimit --pid <pid> --<limit>=<soft>:<hard>
sudo prlimit --pid 12345 --nofile=655350:655350
sudo prlimit --pid 12345 --nofile=655350

磁盤IO優化

參數名稱 解釋說明
sudo blockdev --setra 16384 /dev/sdx 磁盤隊列
sudo sh -c 'echo "4096" > /sys/block/sdx/queue/nr_requests' 預讀大小
sudo sh -c 'echo "500" > /proc/sys/vm/dirty_writeback_centisecs' 控制內核的髒數據刷新進程pdflush的運行間隔
sudo sh -c 'echo "35" > /proc/sys/vm/dirty_ratio' 控制文件系統的文件系統寫緩衝區的大小,當大於閥值控制pdflush進程什麼時候刷盤,當前寫髒pagecache佔用物理內存的比例大於閥值刷新到磁盤
sudo sh -c 'echo "5" > /proc/sys/vm/dirty_background_ratio' 百分值,保留過時頁緩存(髒頁緩存)的最大值。是以MmeFree+Cached-Mapped的值爲基準的
sudo sh -c 'echo "2000" > /proc/sys/vm/dirty_expire_centisecs' 1/100秒。緩存頁裏數據的過時時間(舊數據),在下一個週期內被寫入硬盤。默認30秒是一個很長的時間

 

博客引用地址:http://www.javashuo.com/article/p-bhayvrsr-gm.html函數

相關文章
相關標籤/搜索