Microsoft Sync Framework - производительность и масштабируемость
Я пытаюсь использовать Microsoft Sync Framework 2.1 в базе данных SQL Server. Будет большое количество одновременных конечных пользователей, синхронизирующихся с центральным сервером базы данных.
Дополнительные характеристики:
- 1500 одновременных клиентов подключаются к 1 центральному серверу базы данных
- Клиент использует MS SQL Server Express 2008 R2
- Сервер использует MS SQL Server Enterprise 2008 R2
- Короткие интервалы синхронизации (около 5 минут)
- Размер базы данных составит 5 ГБ
- Веб-сервис будет использоваться как серверный SyncProvider
У кого-нибудь есть опыт работы со средами Sync Framework, подобной этой?
- Является ли это возможным?
- Что важно учитывать при реализации этого?
- Каковы физические ограничения, которые я могу ожидать?
2 ответа
Некоторые вещи, которые нужно иметь в виду:
Число областей действия. Возможно, вы захотите сохранить соотношение области 1: 1 для клиента к серверу вместо 1500 областей действия клиента для одной области сервера. это изолирует знания о синхронизации каждого клиента друг от друга, вы можете даже удалить и воссоздать область клиента, не затрагивая другие области. Знание синхронизации также будет очень компактным.
Определение области - не сбрасывать все таблицы в одну область. разные таблицы имеют разные характеристики (например, только загрузка, только чтение, менее частое обновление, частое обновление и т. д.). групповые таблицы на основе их характеристик.
Пакетирование - если изменения невелики, не пакетируйте. при пакетировании вы понизите производительность, так как пакет должен записывать файлы, а затем восстанавливать набор данных изменений из файлов.
Очистка метаданных - настройка хранения метаданных и процесса очистки метаданных. это должно уменьшить метаданные синхронизации (строки в таблицах отслеживания и знания о синхронизации).
WCF config -watch out для ваших записей конфигурации WCF, таких как тайм-аут, размер сообщения и т. Д.... также следует знать об этой проблеме: http://support.microsoft.com/kb/2567595
РЕДАКТИРОВАТЬ:
Также обратите внимание на другие аспекты Scope здесь: Особенности Sync Framework Scope и SQL Azure Data Sync Dataset.
Образец предоставлен здесь: http://www.rajneeshnoonia.com/blog/2012/03/n-tier-sync-framework/
Является ли что-то близкое к вашим требованиям
Определяется область 1:1 => мы определили шаблон и настроили область для каждого клиента на основе этого шаблона. В этом senerio T1 определен в S1 и S2, однако фильтры используются для идентификации записей уровня строки для каждой области.