У меня такая же дилемма в моем приложении flex.
Кажется, что лучший способ справиться с этим - сохранить интервал между секундами между сервером и клиентом и принудительно опросить состояние каждого клиента.
Я сделал следующий подход, обратите внимание, что это не решает проблему синхронизации, она просто значительно снижает возможную ситуацию.
У меня есть на стороне сервера, по одному кешу каждой коллекции вызовов. У меня на стороне клиента, на экземпляр приложения, один кеш из тех же коллекций.
Экземпляр 1 загружает некоторый массив объектов в сетку. (Создает исходное состояние коллекции с сервером)
Экземпляр 2 загружает и вносит изменения, отправляет измененные данные на сервер, информация db сохраняется и серверный кеш перестраивается. (Кэш клиента также поддерживает свой локальный кеш, не требующий повторного вызова коллекции сервера.)
Экземпляры не синхронизированы. (будет синхронизироваться в следующем интервале опроса) экземпляр two - это синхронизация из-за того, что приложение отвечает за изменения.
Оба экземпляра периодически проверяют сервер, как 10-секундный интервал для изменений. (Если на стороне сервера кэш пострадал изменения, он принесет новую информацию для всех клиентов на следующем интервале вызова.)
Если никаких изменений на уровне стороны сервера нет данных посылаются один уже зарегистрированным клиентом. (Это означает, что не происходит обмен нет информации между сервером и клиентом, уменьшая накладные расходы.)
Если третий клиент приходит, это состояние является новым и будет выполнять необходимые вызовы для создания своего текущего кэша, а также.
Существует задержка, но она, несомненно, помогает распространять изменения клиенту.
Проблема заключается в том, что клиент потребляет дополнительную память, сохраняя ее состояние кеша.
Я делаю это в на экран ситуации, раз, что экран находится вне поля зрения, кэша клиента обнуляется, раз, что экран вызывается снова, местной создается кеш и начинается таймер, и начинается опрос.
Надежда, что помогает,
Эрнани
контроль эту презентацию на OT и прочитать больше о - http://docs.google.com/present/view?id=dggjrx3s_1573xdhxprd – Anurag