<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ## 1、高并發架構的相關概念 高并發概念:并發,高并發,通常是指并發訪問。也就是在某個時間點,有多少個訪問同時到來。 ## 2、高并發的問題,我們集體該關心什么? * qps:每秒鐘請求或查詢的數量,在互聯網領域,指每秒響應請求數(http請求) * 吞吐量:單位時間內處理的請求數量(通常由QPS與并發數決定) * 響應時間,從請求發出到收到響應應花費的時間,列如系統處理一個http請求需要100ms,這個100ms激素hi系統的響應時間 * pv:綜合瀏覽量,即頁面瀏覽量或者是點擊量,一個訪客在24小時之內訪問的頁面的數量 * 同一個人瀏覽你的網站的同一頁面,只記作一次pv * uv:獨立訪客,即一定的時間范圍內相同訪客多次瀏覽網站,只計算為1個獨立訪客 * 帶寬:計算帶寬大小需要關注兩個指標,峰值流量和頁面的平均大小 * 日網站的帶寬=pv/統計時間(換算為秒)*平均頁面大小(單位kb)*8 * qps不等于并發連接數 * qps是每秒http請求數量,并發連接數是系統同時處理的請求數量 * 峰值每秒請求數(qps)=(總pv數*80%)/(6小時秒數*20%) * 壓力測試:測試能承受的最大的并發數,測試最大承受的qps值 * 測試工具:ab,wrk,http\_load * ab:可以創建多個并發線程,模擬多個訪問者同時對某一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實現負載均衡)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看