Как один поток моего PHP скрипта, который постоянно работает, может прослушивать различные входящие XMLHttpRequests? - PullRequest
0 голосов
/ 17 апреля 2020

Я пишу PHP код, который получает данные от различных клиентов (XMLHttpRequests) и передает данные обратно некоторым другим клиентам.

Я знаю, что обычная процедура будет сохранять все входящие данные на диске (базы данных $_SESSION или mySQL и т. д. c), а затем прочитайте их клиентам, запрашивающим эти данные.

Однако, поскольку в моем проекте было бы слишком много записи и чтения данных, я не хочу использовать какой-либо метод, который требует задания записи / чтения жесткого диска. Я получаю до 100 json строк в секунду, и жесткий диск замедляет все это до полной остановки.

Я думаю об альтернативе, которая не предусматривает использование жесткого диска. Это будет запуск одного потока моего PHP скрипта (вместо выполнения нового каждый раз, когда создается XMLHttpRequest) бесконечно . Я имею в виду, что я хочу запустить один PHP сценарий, который остается в живых в течение всего oop или какой-то итерации.

Вопрос теперь состоит в том, запускаю ли я этот сценарий в al oop (или как-то бесконечно), как я могу прослушать входящую XMLHttpRequests ( или любую другую json строку, отправленную клиентами ?

Я знаю, когда клиент отправляет запрос, инициируется новый поток сценария PHP, и мои переменные из уже запущенного сценария будут полностью игнорироваться.Так, снова, проблема заключается в , как я могу убедиться, что строки json, отправленные клиентами, перехвачены уже запущенный скрипт, а не новый? Возможно ли это обработать на Apache или PHP?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...