Задавайте вопросы, мы ответим
Вы не зашли.
Есть проблема в синхронизации данных между несколькими клиентами.
Клиенты имеют списки, например: список неиспользованных бланков, список договоров и т.д., которые загружаются из БД.
Например, один клиент резервирует бланк или добавляет страховую компанию.
Второй клиент должен это отобразить.
Наиболее удобно, я так думаю, было бы оповещение всех клиентов сервером.
Но, вряд ли это возможно.
Т.е., как я думаю, нужно делать опрос сервера через определённый временной интервал.
Но я не могу полностью перестраивать все списки. Или даже списки на активной странице. Если даже полностью перестраивать дерево компаний, будет видно мелькание.
Т.е., я сейчас думаю так, что сервер, по триггерам должен записывать в некую таблицу все добавления/изменения/удаления каждой таблицы, которую клиент может изменить.
В общем-то, такая задача, наверное, достаточно распространена.
Но вот я не знаю откуда подступиться.
Отсюда два вопроса:
1.) Возможно ли сделать оповещение клиентов сервером?
2.) Вариант с таблицей выгляди монструозным. Возможно ли как-то приемлемо реализовать такой вариант?
Неактивен
Я в свое время, когда работал программистом, реализовывал второй вариант.
Не очень-то он и монструозен (только сделайте еще в этой табличке id автоинк-
рементальный, и каждый клиент должен помнить id, с которого ему надо вытя-
гивать обновления).
А первый вариант тоже можно сделать, но прийдется немного попрограммировать.
Вы можете написать пользовательскую функцию на компилируемом языке прог-
раммирования (например, С или С++) и встроить ее в MySQL. Таким образом
Вы можете осуществить вообще любое действие, в т.ч. и информирование клиентов.
Неактивен
Я в свое время, когда работал программистом, реализовывал второй вариант.
Не очень-то он и монструозен (только сделайте еще в этой табличке id автоинк-
рементальный, и каждый клиент должен помнить id, с которого ему надо вытя-
гивать обновления).
Я думал, вообще, про таблицу, в которой фиксируются изменения и время изменения. Клиенты тоже хранят время последней загрузки изменений.
Но таблиц, подверженных изменению через клиент - много... Надо хранить имя таблицы, дополнительно что-то придумывать. Короче, каша какая-то, пока что. %-|
А что делать с автоинкрементным ID?
А первый вариант тоже можно сделать, но прийдется немного попрограммировать.
Вы можете написать пользовательскую функцию на компилируемом языке прог-
раммирования (например, С или С++) и встроить ее в MySQL. Таким образом
Вы можете осуществить вообще любое действие, в т.ч. и информирование клиентов.
Я думал об этом. Вариант не лучший... А что-то вроде LISTEN/NOTIFY нет в MySQL?
Неактивен
С id — SELECT * FROM changelog WHERE id > $myid.
Встроенных нотификаций нету, к сожалению.
Неактивен