併發的問題,我們具體該關心什麼?
講真話,高併發是個比較抽象的概念。很難有乙個統一的可衡量的標準。哪麼有一些其它維度的標準指標來衡量系統的效能嗎?搬出以前計算機課程裡邊的一些指標來跟大家聊聊。
先宣告幾個概念,別打瞌睡。
qps(tps):每秒鐘 request/事務 數量,在網際網路領域,指每秒響應請求數(指http請求);
吞吐量:單位時間內處理的請求數量(通常由qps與併發數決定);
這裡一定要注意呃,qps ≠ 併發數
併發是指,某個時刻有多少個訪問同時到來。qps是指秒鐘響應的請求數量。那麼這裡就肯容易推算出乙個公式:
qps = 併發數 / 平均響應時間
後面我們的分析都是圍繞這個公示來進行展開,沒明白的再回味一下。
現在我們來假設乙個場景:既然qps是每秒鐘處理的http請求數量。那麼1s = 1000ms。假設我們當前乙個http請求伺服器處理完成需要100ms(即那麼 平均響應時間 = 100ms )。那麼它1s鐘可以處理10個請求。也就是說 qps = 10。推算出 併發數 = 10
常常我們被問到高併發的問題,其實從某種程度上來說,他們是想問怎麼提高現有程式的效能。現在我們基於上面的假設,來進行分析。假設現在有個系統效能上就是我們上面的假設,它每天有 300萬pv,執行在單機上(當然經常宕機),按照上面的系統效能資料,給出優化解決方案。
高併發web系統優化總結
1 背景 因為業務需要,搭建了乙個系統,系統主要由兩部分組成,web頁面和資料庫。mysql大概2萬條資料,其中有乙個欄位是click num點選次數,php頁面會取點選次數最小的一條記錄去進行操作,然後update一下click num這個字段,讓click num click num 1。2 問...
Web高併發訪問 用HAPorxy實現負載均衡
haproxy是一款反向 伺服器工具,通過它,可以實現負載均衡。它支援雙機熱備支援虛擬主機,但其配置簡單,擁有非常不錯的伺服器健康檢查功能,當其 的後端伺服器出現故障,haproxy會自動將該伺服器摘除,故障恢復後再自動將該伺服器加入。新的1.3引入了frontend,backend,fronten...
高併發 高可用
高併發 提高系統併發能力的方法主要有兩種 前者垂直擴充套件可以通過提公升單機硬體效能,或者提公升單機架構效能,來提高併發性,但單機效能總是有極限的,網際網路分布式架構設計高併發終極解決方案還是後者 水平擴充套件。網際網路分層架構中,各層次水平擴充套件的實踐又有所不同 1 反向 層可以通過 dns輪詢...