Введение в Mercure + Symfony
Друзья, приветствую! В этой серии видео хотел бы рассказать о таком полезном инструменте, который называется Mercure. Особенно, если вы будете его использовать в связке с фреймворком Symfony, вы можете значительно упростить себе работу с обновлением данных на веб-страницах в реальном времени.
Возможно, вы уже работали с такими технологиями, как вебсокеты (websockets) или Server Site Events(SSE). Это такие технологии, которые встроены в браузер и позволяют нам обновлять данные на странице без ее перезагрузки. То есть, если на сервере у нас поменялись данные, пользователю не нужно перезагружать страницу, чтобы эти данные у него обновились. Как раз таки решением этой задачи и занимается Mercure.
Как это устроено и для чего нужен Mercure?
После установки этой службы, этого инструмента, у нас появляется Mercure Hub т.е. некое хранилище, где будут храниться сообщения, которые будут поступать в него. С этого хранилища уже идет раздача на все устройства, которые к нему подключены, будь то компьютер, мобильный телефон или планшет. В общем, все устройства, которые подключены к этому хабу, будут в реальном времени получать обновления о тех данных, которые обновляются в этом хабе.
Соответственно, если на нашем сервере в нашем приложении произошли какие-то изменения, эти изменения попадают в Mercure Hub методом POST, и соответственно, это разносится по всем устройствам, которые к нему подключены.
Что собой представляет Mercure
Mercure, по сути, это обычная служба, которая будет также крутиться у вас на вашей операционной системе, также как это делает база данных (Mysql, Postgres, …), либо веб-сервер Apache. То есть, просто отдельная служба, которая у нас каким-то образом работает.
У этой службы будет свой порт,к которому можно будет подключаться, и соответственно, можно будет с ней взаимодействовать. По сути, Mercure это такой инструмент, который позволяет нам упростить работу с вебсокетами и SSE.
То есть нам не нужно писать низкоуровневый код, а этот инструмент позволяет нам более простыми командами взаимодействовать с нашим хабом хранилищем и обновлять данные в режиме реального времени.
Для Symfony есть специальная страница,
https://symfony.com/doc/current/mercure.html
на которой вы можете также посмотреть информацию о специальном бандле, который позволяет адаптировать этот сервис для Symfony.
Нужно понимать, что Mercure - это не только для Symfony. Его можно использовать с другими фреймворками. Это такой универсальный инструмент, который мы можем использовать.
Собственно говоря, вот такое вводное видео. Давайте теперь будем погружаться в работу с Mercure Hub в связке с Symfony и посмотрим, как его настроить.
Чтобы оставить сообщение, зарегистрируйтесь/войдите на сайт через:
Email - зарегистрироваться / войти