<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                這兩個函數是負載均衡模塊最底層的函數,負責實際獲取一個連接和回收一個連接的預備操作。之所以說是預備操作,是因為在這兩個函數中,并不實際進行建立連接或者釋放連接的動作,而只是執行獲取連接的地址或維護連接狀態的操作。需要理解的清楚一點,在peer.get函數中獲取連接的地址信息,并不代表這時連接一定沒有被建立,相反的,通過get函數的返回值,nginx可以了解是否存在可用連接,連接是否已經建立。這些返回值總結如下: | 返回值 | 說明 | nginx后續動作 | |-----|-----|-----| | NGX_DONE | 得到了連接地址信息,并且連接已經建立。 | 直接使用連接,發送數據。 | | NGX_OK | 得到了連接地址信息,但連接并未建立。 | 建立連接,如連接不能立即建立,設置事件, 暫停執行本請求,執行別的請求。 | | NGX_BUSY | 所有連接均不可用。 | 返回502錯誤至客戶端。 | 各位讀者看到上面這張表,可能會有幾個問題浮現出來: | Q: | 什么時候連接是已經建立的? | |-----|-----| | A: | 使用后端keepalive連接的時候,連接在使用完以后并不關閉,而是存放在一個隊列中,新的請求只需要從隊列中取出連接,這些連接都是已經準備好的。 | | Q: | 什么叫所有連接均不可用? | | A: | 初始化請求的過程中,建立了一張表,get函數負責每次從這張表中不重復的取出一個連接,當無法從表中取得一個新的連接時,即所有連接均不可用。 | | Q: | 對于一個請求,peer.get函數可能被調用多次么? | | A: | 正式如此。當某次peer.get函數得到的連接地址連接不上,或者請求對應的服務器得到異常響應,nginx會執行ngx_http_upstream_next,然后可能再次調用peer.get函數嘗試別的連接。upstream整體流程如下: | ![](https://box.kancloud.cn/2015-08-12_55cb06b225224.PNG)
                  <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>

                              哎呀哎呀视频在线观看