Перейти к содержанию
Fire Monkey от А до Я
  • 0

Обновление клиента по событию


Dmitry Stolyarov

Вопрос

Есть клиентское приложение на Win, сервер на MySQL, связка через json+php.

Как можно реализовать аналог Events. Например, когда на одном из клиентов была внесена запись в таблице, то надо чтобы на других клиентах появилось эта запись/или типа запрос на обновление таблицы. При этом постоянно мониторить таблицу на изменения, на мой взгляд, не самый лучший вариант.. 

Подскажите, как лучше реализовать?

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

лучший вариант - именно мониторить

сервер не должен звонить клиенту

много раз попадал в ситуации, когда клиент хотел синхронного обновления данных , но когда раскладываешь ему нагрузки на сервер и сети для такой "нехитрой" вещицы, сразу оказывалось, что вполне терпит и 10 и 30 секунд даже )

Ссылка на комментарий
  • 0
В 22.05.2020 в 20:35, Dmitry Stolyarov сказал:

Есть клиентское приложение на Win, сервер на MySQL, связка через json+php.

Как можно реализовать аналог Events. Например, когда на одном из клиентов была внесена запись в таблице, то надо чтобы на других клиентах появилось эта запись/или типа запрос на обновление таблицы. При этом постоянно мониторить таблицу на изменения, на мой взгляд, не самый лучший вариант.. 

Подскажите, как лучше реализовать?

Запоминайте в php последний номер добавленной записи (id), добавьте в api метод вроде GetLastRecordsIDs, который будет возвращать все ID нужных таблиц. Клиент пусть долбится в этот метод раз в N секунд и сверяет свои последние ID с ID сервера, при не совпадении - запрос новых данных.

В php хранить последние идешники можно как угодно - файл, сессия, ну или memcache чтоб уж совсем быстро было. Я бы хранил в сессии, и сессию сделал в memcached.

Ссылка на комментарий

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...