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

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # swoole_server->set swoole_server->set函數用于設置swoole_server運行時的各項參數。服務器啟動后通過$serv->setting來訪問set函數設置的參數數組。 原型: ```php function swoole_server->set(array $setting); ``` 示例: ```php $serv->set(array( 'reactor_num' => 2, //reactor thread num 'worker_num' => 4, //worker process num 'backlog' => 128, //listen backlog 'max_request' => 50, 'dispatch_mode' => 1, )); ``` > swoole_server->set只能在swoole_server->start前調用 最大連接 ----- max_conn => 10000, 此參數用來設置Server最大允許維持多少個tcp連接。超過此數量后,新進入的連接將被拒絕。 > 此參數不要調整的過大,根據機器內存的實際情況來設置。Swoole會根據此數值一次性分配一塊大內存來保存Connection信息 守護進程化 ---- daemonize => 1,加入此參數后,執行php server.php將轉入后臺作為守護進程運行 reactor線程數 ---- reactor_num => 2,通過此參數來調節poll線程的數量,以充分利用多核 > reactor_num和writer_num默認設置為CPU核數 > 1.6.9之前版本請使用 poll_thread_num => 2來設置 worker進程數 ---- worker_num => 4,設置啟動的worker進程數量。swoole采用固定worker進程的模式。 PHP代碼中是全異步非阻塞,worker_num配置為CPU核數的1-4倍即可。如果是同步阻塞,worker_num配置為100或者更高,具體要看每次請求處理的耗時和操作系統負載狀況。 > 當設定的worker進程數小于reactor線程數時,會自動調低reactor線程的數量 max_request ---- max_request => 2000,此參數表示worker進程在處理完n次請求后結束運行。manager會重新創建一個worker進程。此選項用來防止worker進程內存溢出。 > PHP代碼也可以使用memory_get_usage來檢測進程的內存占用情況,發現接近memory_limit時,調用exit()退出進程。manager進程會回收此進程,然后重新啟動一個新的Worker進程。 > onConnect/onClose不增加計數 ```shell max_request => 0 ``` 設置為0表示不自動重啟。在Worker進程中需要保存連接信息的服務,需要設置為0. Listen隊列長度 ---- backlog => 128,此參數將決定最多同時有多少個待accept的連接,swoole本身accept效率是很高的,基本上不會出現大量排隊情況。 CPU親和設置 ---- open_cpu_affinity => 1 ,啟用CPU親和設置 TCP_NoDelay啟用 ---- open_tcp_nodelay => 1 ,啟用tcp_nodelay TCP_DEFER_ACCEPT ---- tcp_defer_accept => 5,此參數設定一個秒數,當客戶端連接連接到服務器時,在約定秒數內并不會觸發accept,直到有數據發送,或者超時時才會觸發。 日志文件路徑 ---- log_file => '/data/log/swoole.log', 指定swoole錯誤日志文件。在swoole運行期發生的異常信息會記錄到這個文件中。默認會打印到屏幕。 > 此配置僅在swoole-1.5.8以上版本中可用 數據buffer ---- buffer主要是用于檢測數據是否完整,如果不完整swoole會繼續等待新的數據到來。直到收到完整的一個請求,才會一次性發送給worker進程。這時onReceive會收到一個超過SW_BUFFER_SIZE, 小于$serv->setting['package_max_length']的數據。 目前僅提供了EOF檢測、固定包頭長度檢測2種buffer模式。 open_eof_check => true打開buffer package_eof => "\r\n\r\n" 設置EOF 心跳檢測機制 ----- heartbeat_check_interval => 30 //每隔多少秒檢測一次,單位秒,Swoole會輪詢所有TCP連接,將超過心跳時間的連接關閉掉 heartbeat_idle_time => 60 //TCP連接的最大閑置時間,單位s , 如果某fd最后一次發包距離現在的時間超過heartbeat_idle_time會把這個連接關閉。 > 心跳檢測特性需要swoole-1.6.10+ > heartbeat_idle_time必須大于或等于heartbeat_check_interval worker進程數據包分配模式 ---- dispatch_mode = 1 //1平均分配,2按FD取模固定分配,3搶占式分配,默認為取模(dispatch=2) > 搶占式分配,每次都是空閑的worker進程獲得數據。很合適SOA/RPC類的內部服務框架 > 當選擇為dispatch=3搶占模式時,worker進程內發生onConnect/onReceive/onClose/onTimer會將worker進程標記為忙,不再接受新的請求。reactor會將新請求投遞給其他狀態為閑的worker進程 > 如果希望每個連接的數據分配給固定的worker進程,dispatch_mode需要設置為2
                  <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>

                              哎呀哎呀视频在线观看