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

workerman reload問(wèn)題的疑惑

void

workerman版本:3.5.18

發(fā)起 reload 指令

前置條件
static::$_gracefulStop = true;
$worker->reloadable = true;
$worker->count = 4;

[attach]1698[/attach]

[attach]1699[/attach]
?
按照這個(gè)邏輯一次只能 reload 一個(gè)子進(jìn)程,其他3個(gè)子進(jìn)程根本reload不了
是否需要手動(dòng)執(zhí)行多次reload 才能reload其余的子進(jìn)程呢,有點(diǎn)不解, THX

3727 1 0
1個(gè)回答

phpcreeper
  1. reload的原理就是一個(gè)一個(gè)逐步退出然后逐步啟動(dòng)的,這個(gè)啟動(dòng)的過(guò)程是自動(dòng)的,非手動(dòng)的。
  2. 其原理的另外部分相關(guān)代碼位于:
    https://github.com/walkor/Workerman/blob/9f36bb4cb718c6fd5b03771bd5f266cd371bb23e/Worker.php#L1592-L1600
  • void 2019-01-31

    parseCommand 方法里面有 reload指令的解析,還有 -g 參數(shù) ,這個(gè)是可以手動(dòng)的,如果是
    手動(dòng),按照代碼邏輯一次只能 reload 一個(gè)子進(jìn)程

  • void 2019-01-31

    $one_worker_pid = current(static::$_pidsToRestart);
    // Send reload signal to a worker process.
    posix_kill($one_worker_pid, $sig);

    在主進(jìn)程 reload 方法里只向一個(gè)子進(jìn)程發(fā)送了 reload 信號(hào),手動(dòng)操作帶 -g 參數(shù)進(jìn)行 reload
    這個(gè)是不能實(shí)現(xiàn)對(duì)所有子進(jìn)程進(jìn)行 reload吧,不知道理解對(duì)不對(duì), THX

  • phpcreeper 2019-01-31
    1. 我說(shuō)的非手動(dòng)是指:執(zhí)行php start.php reload [-g] 指令后,逐個(gè)reload 子進(jìn)程的啟動(dòng)過(guò)程是由主進(jìn)程自動(dòng)啟動(dòng)的。
    2. php start.php reload: 代表平滑重啟進(jìn)程,所謂的一個(gè)一個(gè)逐步退出然后逐步啟動(dòng),換句話就是: 第一個(gè)子進(jìn)程退出,然后主進(jìn)程立即補(bǔ)上來(lái)一個(gè),然后第二個(gè)子進(jìn)程再退出,然后再補(bǔ)上來(lái)一個(gè)......一次類推,直至新的進(jìn)程完全替換掉老的進(jìn)程。
    3. php start.php reload -g: 代表的優(yōu)雅的重啟,唯一的區(qū)別就在于每個(gè)子進(jìn)程會(huì)等待連接關(guān)閉以后才會(huì)退出,剩余的 和 reload 一模一樣。
  • void 2019-01-31

    謝謝兄臺(tái)的細(xì)心解答,我再分析一下全局代碼,可能是某個(gè)點(diǎn)被我忽略了,造成理解上的疑惑

  • phpcreeper 2019-01-31

    @5401:

    1. -g 參數(shù)和你說(shuō)的能否reload 所有子進(jìn)程,根本毫無(wú)關(guān)系,我上面已經(jīng)回復(fù)你了。
    2. 你貼的這段代碼就是只向一個(gè)子進(jìn)程發(fā)送reload信號(hào),這正是reload的本意?。恢鬟M(jìn)程會(huì)不停的監(jiān)控子進(jìn)程退出情況,一旦退出然后隨即給補(bǔ)上來(lái),整個(gè)過(guò)程就是一個(gè)個(gè)逐步退出并逐步補(bǔ)上來(lái)的,重點(diǎn)就是:一個(gè)一個(gè)一個(gè)的來(lái)的。
    3. 不客氣,你再琢磨琢磨。
  • void 2019-01-31

    好的,我再折騰一下,把所有不解的梳理出來(lái),讓兄臺(tái)指點(diǎn)一下

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