<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國際加速解決方案。 廣告
                # socket_buffer_size 配置客戶端連接的緩存區長度。從1.8.8版本開始swoole底層對于緩存區控制的參數分離成`buffer_output_size`和`socket_buffer_size`兩項配置。 參數`buffer_output_size`用于設置單次最大發送長度。`socket_buffer_size`用于設置客戶端連接最大允許占用內存數量。 ```shell $server->set([ 'socket_buffer_size' => 128 * 1024 *1024, //必須為數字 ]) ``` * 單位為字節,如`128 * 1024 *1024`表示每個TCP客戶端連接最大允許有`128M`待發送的數據 * 默認為`2M`字節 數據發送緩存區 ----- 調整連接發送緩存區的大小。TCP通信有擁塞控制機制,服務器向客戶端發送大量數據時,并不能立即發出。這時發送的數據會存放在服務器端的內存緩存區內。此參數可以調整內存緩存區的大小。 如果發送數據過多,客戶端阻塞,數據占滿緩存區后Server會報如下錯誤信息: ``` swFactoryProcess_finish: send failed, session#1 output buffer has been overflowed. ``` > 發送緩沖區塞滿導致`send`失敗,只會影響當前的客戶端,其他客戶端不受影響 > 服務器有大量TCP連接時,最差的情況下將會占用`serv->max_connection * buffer_output_size`字節的內存 __尤其是外圍通信的服務器程序,網絡通信較慢,如果持續連續發送數據,緩沖區很快就會塞滿。發送的數據會全部堆積在Server的內存里。因此此類應用應當從設計上考慮到網絡的傳輸能力,先將消息存入磁盤,等客戶端通知服務器已接受完畢后,再發送新的數據。__ 如視頻直播服務,A用戶帶寬是 100M,1秒內發送10M的數據是完全可以的。B用戶帶寬只有1M,如果1秒內發送10M的數據,B用戶可能需要100秒才能接收完畢。這時數據會全部堆積在服務器內存中。 可以根據數據內容的類型,進行不同的處理。如果是可丟棄的內容,如視頻直播等業務,網絡差的情況下丟棄一些數據幀完全可以接受。如果內容是不可丟失的,如微信消息,可以先存儲到服務器的磁盤中,按照100條消息為一組。當用戶接受完這一組消息后,再從磁盤中取出下一組消息發送到客戶端。
                  <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>

                              哎呀哎呀视频在线观看