国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

應(yīng)該開啟多少進(jìn)程

如何設(shè)置進(jìn)程數(shù)

進(jìn)程數(shù)是由count屬性決定的(windows系統(tǒng)不支持進(jìn)程數(shù)設(shè)置),例如下面代碼

use Workerman\Worker;
require_once __DIR__ . '/vendor/autoload.php';

$http_worker = new Worker("http://0.0.0.0:2345");

// ## 啟動(dòng)4個(gè)進(jìn)程對(duì)外提供服務(wù) ##
$http_worker->count = 4;

...

進(jìn)程數(shù)設(shè)置需要考慮以下條件

1、cpu核數(shù)

2、內(nèi)存大小

3、業(yè)務(wù)偏向IO密集還是CPU密集型

進(jìn)程數(shù)設(shè)置原則

1、每個(gè)進(jìn)程占用內(nèi)存之和需要小于總內(nèi)存(一般來(lái)說每個(gè)業(yè)務(wù)進(jìn)程占用內(nèi)存大概40M左右)

2、如果是IO密集型,也就是業(yè)務(wù)中涉及到一些阻塞式IO,比如一般的訪問Mysql、Redis等存儲(chǔ)都是阻塞式訪問的,進(jìn)程數(shù)可以開大一些,如配置成CPU核數(shù)的3倍。如果業(yè)務(wù)中涉及的阻塞等待非常多,可以再適當(dāng)加大進(jìn)程數(shù),例如CPU核數(shù)的8倍甚至更高。注意非阻塞式IO屬于CPU密集型,而不屬于IO密集型。

3、如果是CPU密集型,也就是業(yè)務(wù)中沒有阻塞式IO開銷,例如使用異步IO讀取網(wǎng)絡(luò)資源,進(jìn)程不會(huì)被業(yè)務(wù)代碼阻塞的情況下,可以把進(jìn)程數(shù)設(shè)置成和CPU核數(shù)一樣

進(jìn)程數(shù)設(shè)置參考值

如果業(yè)務(wù)代碼偏向IO密集型,則根據(jù)IO密集程度設(shè)置進(jìn)程數(shù),例如CPU核數(shù)的3-8倍。

如果業(yè)務(wù)代碼偏向CPU密集型,則可以將進(jìn)程數(shù)設(shè)置成cpu核數(shù)。

注意

Workerman自身的IO都是非阻塞的,例如Connection->send等都是非阻塞的,屬于CPU密集型操作。如果不清楚自己業(yè)務(wù)偏向于哪種類型,可設(shè)置進(jìn)程數(shù)為CPU核數(shù)的3倍左右即可。
另外進(jìn)程數(shù)并非越多越好,進(jìn)程開得太多,進(jìn)程切換開銷會(huì)增大,對(duì)性能有一定影響。

編輯于2024-03-13 17:37:19 完善本頁(yè) +發(fā)起討論
贊助商