Бекенд межпроцессных пользовательских событий в переполнении стека

Мне нужно реализовать механизм межпроцессных событий в PHP с несколькими источниками событий и несколькими слушателями событий. Например, PHP-скрипт, работающий в cron, может обнаружить новый входящий телефонный звонок и вызвать пользовательское событие с именем MY_EVENT_INCOMMING_CALL, Любые другие скрипты PHP CLI / Apache, работающие в одно и то же время (ожидающие события в цикле), будут уведомлены о том, что это событие сработало, и выполнят некоторую работу. Например, отправленное серверное событие может быть отправлено в подключенные в настоящее время интернет-браузеры и отображать всплывающее уведомление о поступлении входящего вызова. Еще одна вещь: сценарий прослушивания должен получать только события, вызванные ПОСЛЕ начала прослушивания сценария, более старые события не должны обрабатываться.

Одна реализация использует таблицу SQL, содержащую события, с некоторыми сценариями, вставляющими события, другие пули для новых событий (на основе отметки времени события) и сценарий сборщика мусора событий, который удаляет старые события.

Я не заинтересован в сторонних инструментах, таких как RabbitMQ.

Есть ли какой-нибудь нативный механизм / библиотека PHP для такой ситуации?

ОБНОВЛЕНИЕ: я все еще не нашел собственную реализацию и закончил с использованием сокетов; Я разместил реализацию здесь: https://github.com/xprt64/events

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]