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

靜態(tài)類多進(jìn)程之間共享數(shù)據(jù)的問(wèn)題

9raxdev

假設(shè)有一個(gè)靜態(tài)類

class Data{
    static $rules;
}

我在new Worker 前對(duì)$rules進(jìn)行了賦值操作,后面在 $worker->onMessage(){} 里面進(jìn)行了修改。

那么在onMessage的操作其余的進(jìn)程能否讀取到操作后的?

多進(jìn)程之間onMessage是如何區(qū)別當(dāng)前屬于哪個(gè)進(jìn)程,為什么我在

$worker->onMessage=function($connection){
    echo $connection->id;
    //固定的
};

如何調(diào)試各個(gè)進(jìn)程的$rules的狀態(tài)?

3256 1 1
1個(gè)回答

phpcreeper

1、讀不到: 多進(jìn)程之間的進(jìn)程變量是彼此隔離的,是不能直接互相訪問(wèn)的,如果要共享的話,需要借助GlobalData、redis組件來(lái)實(shí)現(xiàn);
2、區(qū)分各個(gè)進(jìn)程: 每個(gè)進(jìn)程都有一個(gè)唯一的id編號(hào),其實(shí)本質(zhì)和進(jìn)程ID是以一對(duì)一的概念抽象,可以這樣獲取區(qū)分:

$worker_id = $connection->worker->id;

3、connection->id固定: 這個(gè)是每個(gè)tcp連接的id編號(hào),當(dāng)前活動(dòng)進(jìn)程內(nèi)自增唯一,最大值為PHP_INT_MAX。

  • 9raxdev 2020-07-07

    在此基礎(chǔ)之上,有沒有方法控制鏈接請(qǐng)求走哪個(gè)$worker_id ?貌似本地測(cè)試的時(shí)候一直是$connection->worker->id =1 的在響應(yīng)

  • phpcreeper 2020-07-07

    1、這個(gè)沒法控制的,哪個(gè)進(jìn)程去accept哪個(gè)連接請(qǐng)求這是由操作系統(tǒng)內(nèi)核調(diào)度的。
    2、不要被"某個(gè)連接一直似乎被某個(gè)進(jìn)程在處理"的表面現(xiàn)象給迷惑了,你多壓測(cè)連接量自然就看出不是這么回事了,一個(gè)進(jìn)程能一直在處理,只能說(shuō)明這個(gè)進(jìn)程還是不夠繁忙能夠處理過(guò)來(lái)。

年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??