У меня есть серверное приложение, которое предлагает данные нескольким клиентам по сети. Вы можете представить данные как огромный список строк. Данные на сервере могут измениться и должны быть синхронизированы для всех клиентов.Есть ли шаблон для синхронизации списков данных по сети?
В настоящее время я использую этот подход: при первоначальном подключении клиентское приложение запрашивает все текущие данные (что может быть большим количеством байтов). Затем он подписывается на обновления (добавления, смены и удаления) любых данных.
Это прекрасно работает, если данные не изменены на сервере между отправкой исходного списка данных и приложением, подписывающимся на изменения. В этом случае клиент пропускает несколько обновлений и работает с устаревшими данными, не зная об этом.
Я считаю, что это очень распространенный сценарий, поэтому должен быть шаблон, который решает проблему. Я использую C# 4 и WCF, но шаблон должен быть агностиком языка, я считаю.