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

啟動(dòng)進(jìn)程,使用定時(shí)器檢測(cè)心跳

ppwq

以下代碼是心跳的demo
假如開了4個(gè)進(jìn)程,豈不是每個(gè)進(jìn)程都會(huì)每隔10秒輪詢檢測(cè)一次是否超時(shí)?
這樣操作是不是太頻繁了?
如果指定某個(gè)進(jìn)程輪詢,其他進(jìn)程的連接又檢測(cè)不到

==========
// 進(jìn)程啟動(dòng)后設(shè)置一個(gè)每10秒運(yùn)行一次的定時(shí)器
$worker->onWorkerStart = function($worker) {
Timer::add(10, function()use($worker){
$time_now = time();
foreach($worker->connections as $connection) {
// 有可能該connection還沒收到過消息,則lastMessageTime設(shè)置為當(dāng)前時(shí)間
if (empty($connection->lastMessageTime)) {
$connection->lastMessageTime = $time_now;
continue;
}
// 上次通訊時(shí)間間隔大于心跳間隔,則認(rèn)為客戶端已經(jīng)下線,關(guān)閉連接
if ($time_now - $connection->lastMessageTime > HEARTBEAT_TIME) {
$connection->close();
}
}
});
};

3342 1 0
1個(gè)回答

phpcreeper

這個(gè)定時(shí)器內(nèi)僅僅是純粹的檢測(cè)又沒有什么復(fù)雜的業(yè)務(wù)邏輯,一般不會(huì)對(duì)服務(wù)器造成壓力的;另外根據(jù)路由器節(jié)點(diǎn)防火墻的反空閑超時(shí)時(shí)間來評(píng)估定時(shí)頻率推薦最好設(shè)置為50秒。

  • ppwq 2021-03-28

    心跳不是推薦55秒?
    檢測(cè)間隔約等于或者大于心跳間隔,似乎也不會(huì)出什么問題.,
    遲一些斷開也沒啥問題

  • phpcreeper 2021-03-28

    小于60秒都是合理的、50秒、55秒都是相對(duì)合理的設(shè)置、別陷坑。

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