我們需要有度量的指標,有了資料才能明確目前存在的效能問題,也能夠用資料來評估效能優化的效果。
響應時間控制在多久比較合適呢?
從使用者體驗的角度來說:
健康系統的 99 分位值的響應時間通常通知在 200 ms 之內,不超過 1s 的請求佔比要在 99.99% 以上。
1、提公升系統的處理核心數
增加系統的並行處理能力
2、減少單次任務的響應時間
先看系統是 cpu 密集型還是 io 密集型
cpu密集型系統中,需要處理大量的 cpu 運算,那麼選用更高效的演算法或者減少運算次數就是這類系統重要的優化手段。
io 密集型系統指的是系統的大部分操作是在等待 io 完成,
高併發系統設計
高併發系統主要是為了解決在有限的資源下解決最核心的問題,並發現以後可能會出現的問題。高併發原則一般遵守如下幾個設計原則 1.無狀態 指的是應用在處理業務邏輯期間盡量減少鎖的使用 降低網路通訊延遲 無資料持久化操作等,以此來增加應用系統的效能。2.拆分 大而全的系統,可根據實際的訪問量來拆分系統,來實...
高併發系統設計 限流
前面學習過的熔斷和降級都是通過暫時關閉某些非核心服務或者元件來保護核心系統的可用性。但是並不是所有的場景下都可以使用熔斷降級的策略,例如當核心服務產生比較大的影響時,總不能把核心服務進行熔斷與降級,些時一般採用限流方案來進行保護。限流指的是通過限制到達系統的併發請求數量,保證系統能夠正常響應部分使用...
面試 高併發系統設計
在高併發的情景下進行系統設計,可以分為以下 6 點 快取mq 分庫分表 讀寫分離 elasticsearch 將乙個系統拆分為多個子系統,用 rpc 來搞。然後每個系統連乙個資料庫,這樣本來就乙個庫,現在多個資料庫,不也可以扛高併發麼。大部分的高併發場景,都是讀多寫少,那你完全可以在資料庫和快取裡都...