я использую https://github.com/davegardnerisme/nsqphp чтобы использовать с NSQ, я обнаружил, что он использует цикл событий React (React\EventLoop
) для обработки соединения, как этот код:
public function run($timeout = 0)
{
if ($timeout > 0) {
$that = $this;
$this->loop->addTimer($timeout, function () use ($that) {
$that->stop();
});
$this->loop->addTimer(120, function () use ($that) {
if ($that->last_heart_beat_time != 0 && (time() - $that->last_heart_beat_time) > 120) {
$that->stop();
}
});
}
$this->loop->run();
}
Это похоже на короткое соединение, но я не уверен, я прав?
Задача ещё не решена.
Других решений пока нет …