Как создать сервер веб-сокетов, который может обрабатывать несколько соединений, синхронизировать связь между клиентамиPhp

Кемеровские программисты php общаются здесь
Anonymous
Как создать сервер веб-сокетов, который может обрабатывать несколько соединений, синхронизировать связь между клиентами

Сообщение Anonymous »

Этот вопрос имеет аналогичный вопрос здесь. Но кто-то посоветовал мне задать собственный вопрос, и вот он.
У меня есть клиент-серверное приложение C#, которое я хочу перенести в веб-приложение. Сервер получает и отправляет данные клиентам. Он обновляет другие клиенты, когда другой клиент отправляет данные на сервер. Это клиент-серверное приложение, очевидно, использует для этой цели сокет Windows. Буквально в этом месяце я начал писать свой первый PHP-проект. В целом теперь он функционирует согласно моему требованию. Отправка данных на мою веб-страницу при получении запроса и сохранение данных в моей базе данных, отправленных клиентским скриптом (разумеется, Javascript). Теперь моя проблема в том, как я могу уведомить других клиентов (например, мое приложение С#), когда другой клиент вносит изменения в базу данных? Я уже много гуглил, и каждый полученный результат говорит о WebSocket. Я только что узнал, что WebSocket существует уже давно, но в моем случае это первый раз, когда я столкнулся с ним лицом к лицу.
Я еще ничего не пробовал, так как не знаю не знаю, с чего начать. После стольких поисков я попал на эту страницу github, которая мне кажется прекрасной. Но одна вещь, которая сразу же меня обеспокоила, — это метод запуска (WebSocketServer::run), который работает в цикле, что создает вторую проблему: как запускать асинхронную операцию или как выполнять многопоточность в PHP, даже не решая первую проблему. Я сталкиваюсь. Я обычно использую этот скрипт, но как мне запустить его, не блокируя другие операции сервера?
Надеюсь, я достаточно объяснил свою проблему, чтобы все могли понять, что я задумал. Можно ли добиться этого только на чистом PHP? Это означает, что никаких других фреймворков/библиотек нет, хотя я готов использовать их при необходимости.

Подробнее здесь: https://stackoverflow.com/questions/784 ... synchroniz

Вернуться в «Php»