首頁 每日程式設計 PHP知識 高並發和大流量解決方案

高並發和大流量解決方案

Apr 06, 2022 pm 01:36 PM
1

1、高並發架構的相關概念

高並發概念:並發,高並發,通常是指並發存取。也就是在某個時間點,有多少個訪問同時到來。

2、高並發的問題,我們集體該關心什麼?

qps:每秒鐘請求或查詢的數量,在互聯網領域,指每秒回應請求數(http請求)吞吐量:單位時間內處理的請求數量(通常由QPS與並發數決定)回應時間,從請求發出到收到回應應花費的時間,列如係統處理一個http請求需要100ms,這個100ms激素hi系統的回應時間pv:綜合瀏覽量,即頁面瀏覽量或者是點擊量,一個訪客在24小時之內訪問的頁面的數量同一個人瀏覽你的網站的同一頁面,只記作一次pvuv:獨立訪客,即一定的時間範圍內相同訪客多次瀏覽網站,只計算為1個獨立訪客頻寬:計算頻寬大小需要關注兩個指標,峰值流量和頁面的平均大小日網站的頻寬=pv/統計時間(換算為秒)*平均頁面大小(單位kb)*8qps不等於並發連接數qps是每秒http請求數量,並發連接數是系統同時處理的請求數量峰值每秒請求數(qps)=(總pv數80%)/(6小時秒數20%)壓力測試:測試能承受的最大的並發數,測試最大承受的qps值測試工具:ab,wrk,http_loadab:可以建立多個並發線程,模擬多個訪客同時對某一url位址進行存取。它的測試目標是基於url的,因此,它即可以用來測試apache的負載壓力,耶可以測試

#3、ab工具使用的時候的注意事項

測試機器與被測試的機器要分開不要對線上的服務做壓力測試觀察測試工具ab所在的機器以及被測試的前端機的cpu,內存,網絡等都不超過最高限度的75%

4 、不同qps下的解決方案

最佳化實例:

a、qps達到100

假設關係型資料庫的每個請求在0.01秒內完成
假設單一頁面只有一個sql查詢,那麼1000ps意味著1s內完成100次請求,但是此時我們並不能保證資料庫查詢能完成100次
方案:資料庫快取層,資料庫的負載平衡

# qps達到800

假設我們使用百兆頻寬,表示網站出口的實際頻寬是8M左右
假設每個頁面只有10k,在這個並發條件下,百兆頻寬已經吃完
方案:cdn加速,負載平衡

qps達到1000

靜態html快取
qps達到2000
這個等級。檔案系統存取鎖定都變成了災難,
方案:做業務分離,分散式儲存

5、高並發解決方案案例

流量最佳化:防盜鏈處理
前端最佳化:減少http請求,新增非同步請求,啟用瀏覽器緩存,檔案壓縮,cdn加速,建立獨立的圖片伺服器
服務端最佳化:頁面靜態化,並發處理,佇列處理
資料庫最佳化:資料庫快取,分庫分錶,分區操作(可以使用工具完成),讀寫分離,負載平衡
web伺服器最佳化:負載平衡(利用反向代理,lvs實現負載平衡)

以上是高並發和大流量解決方案的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)