多級快取
充分利用 cache 是 cpu 調優的重要手段,由於是底層優化作用範圍廣。
效能分析利器——perf 引數學習
提公升 cache 命中率
快取命中:cpu 要取的資料再一級快取內,直接讀取,稱為 cache 命中率
提公升多核 cache 命中率
若發生 cpu 切換,則之前 l1 和 l2 cache 會發生切換(l1 和 l2 每個cpu單獨擁有, l3 多個 cpu 公用),優化會失效。
繫結到 cpu 比不繫結 cpu 效能更加。
小結:應用程式分配記憶體過程
業務**-->應用層記憶體池-->c 庫記憶體池--> 作業系統記憶體分配
linux 預設 c 庫記憶體池 ptmalloc2
cat /proc/$/maps
檢視記憶體分配
堆記憶體最小分配132k
堆記憶體最好盡早釋放
tcmalloc c 庫記憶體池適合小記憶體分配,中大記憶體分配不如 ptmalloc2
界限:0-256k 小 256k-1m 中 1m 以上 大
tcmalloc: 多執行緒、256k 以下
ptmalloc2: 通用性好,大記憶體
堆和棧記憶體
棧速度快,缺點:容量和宣告週期
磁碟常常是瓶頸所在
優化技術
syn 請求優化
服務端優化
0:關閉1:佇列滿開啟
2:無條件開啟
0:丟棄繞過三次握手傳送資料1:發 rst 給客戶端
goole 統計,三次握手在 http 請求時間中佔了 10% ~ 30%。
tfo 實現過程:
正常三次握手設定系統引數 tcp_fastopen 來使用 tfo, 需要客戶端和伺服器同時支援。syn 攜帶資料
close 函式
shutdown 函式
tcp_orphan_retries: 控制主動方重傳 fin 的次數,預設值為 0,表示 8 次
fin_wait_1
tcp_max_orphans
tcp_fin_timeout
被動方引數優化
netstat 發現大量 close_wait
Linux網路基礎設施配置
1 tcp ip網路配置檔案 etc sysconfig network scripts ifcfg eth0 etc sysconfig network etc host.conf etc hosts etc resolv.conf etc services 1 etc sysconfig net...
AWS 的全球基礎設施和網路
aws 使用全球基礎設施和網路。在這裡有 2 個概念需要了解下 region 和 zones aws 的所有服務都是使用 region 來進行區分的。需要注意的是不同 region 之間的資料和服務是不同的,比如說我們在美東地區常見的 us east n.virginia us east 1 和 u...
網路基礎設施是雲計算的致命弱點?
不管你選擇軟體即服務 平台即服務還是基礎架構即服務,有一件事是不可避免的 你需要良好的 可靠的網路連線到雲。網路很可能成為乙個障礙,因為雲大大改變了網路的作用 以及與之配套的硬體和軟體。雲計算真正的致命弱點是 許多it人員沒有考慮到,建立可靠的網路所帶來的更深層次的挑戰,只有遷移工作完成之後,他們才...