Сохранение данных на стороне сервера по всему массиву клиентов

У меня есть PHP-сайт и база данных SQL. Пользователи смогут обновлять эти данные с помощью мобильного телефона. Я бы хотел, чтобы все пользователи получили эти обновления. Как мне это сделать?

Я мог бы просто использовать ajax и таймер, чтобы каждый запрос клиента обновлялся с заданным интервалом.

Есть ли способ установить обратный вызов сортировки, чтобы служба на сервере вызывала список экземпляров метода? Это предотвратит ненужные запросы и передачу данных …

Related of "Сохранение данных на стороне сервера по всему массиву клиентов"

Если вы не хотите использовать стороннее решение, подобное предложению @Alexandre Martin, вы можете использовать Server Sent Events. Поток выглядит следующим образом:

  1. Каждый пользователь подписывается на канал (подумайте об этом как о регистрации прослушивателя событий в соединении). На стороне сервера скрипт работает непрерывно для отслеживания изменений
  2. Пользователь отправляет обновление на сервер.
  3. Сценарий уведомляет об обновлении и выдает событие
  4. Все клиенты, подписавшиеся на канал, получают событие, считывают его data и обновляют свои локальные модели.

См. Это введение , с образцом реализации PHP.

Вы также можете использовать веб-сокеты. Вот сравнение двух . Перед тем, как внедрить, рассмотрите совместимость браузера .

Вы можете использовать Firebase для создания онлайновой базы данных и отправлять сообщения и загружать сообщения от клиентов и сразу же после их обнаружения (также называемых облачными сообщениями )

SQLite управляет автономными операциями непосредственно на устройстве и синхронизируется с Firebase автоматически.

Посмотрите страницу « Начало работы», и вы найдете учебники для веб-сайтов, iOS и Android. http://firebase.google.com