#angular #laravel #websocket #ratchet
#angular #laravel #websocket #храповик
Вопрос:
мы используем websocket между двумя страницами:
page1: users who are doing actions
page2: moderator who is moderating user data
мы хотим обновлять данные о модерации page2 каждые 5 секунд с помощью websocket, пожалуйста, у вас есть какие-либо предложения?
Короче говоря, это должно происходить в режиме реального времени каждые 5 секунд.
Ответ №1:
Вы неправильно поняли концепцию веб-сокетов, в их использовании нет необходимости в концепции «обновления», поскольку целью веб-сокета является создание «реактивной» платформы, которая реагирует на возникновение события.
Вам нужно прочитать и усвоить концепцию трансляции, прослушивания, событий…
https://laravel.com/docs/5.8/broadcasting
В широковещательной передаче существует концепция посредника (эхо-сервер Laravel (самостоятельный хост) или Pusher.com (Платная услуга), которая отвечает за создание службы, на которую подписываются пользователи, и прослушивание событий, служба отправляет события подписанным пользователям после получения службой события, которое было передано ей в эфир.
Наиболее подходящим вариантом для того, что вы пытаетесь сделать, было бы поискать «Руководства по чату Laravel (Vue / Angualr)» для понимания концепции создания связи между двумя пользователями, подобными этому:
https://appdividend.com/2018/05/19/laravel-vue-chat-application-tutorial/
Веб-сокет служит средством поддержания постоянного соединения с событиями where и может прослушиваться, и соединение прерывается, когда пользователь завершает его путем выхода, а не по тайм-аутам.