Проверка соединений и измерение задержки для репликации транзакций
Репликация транзакций предоставляет функцию трассировочных маркеров, которая обеспечивает удобный способ измерения длительности задержки в топологиях репликации транзакций и помогает проверять соединения между издателем, распространителем и подписчиками. Маркер (небольшая порция данных) записывается в журнал транзакций базы данных публикации, помечается, как обычная реплицированная транзакция, и пересылается через систему, позволяя вычислять следующие параметры:
Промежуток времени между фиксацией транзакции на издателе и вставкой соответствующей команды в базу данных распространителя на стороне распространителя.
Промежуток времени между вставкой команды в базу данных распространителя и фиксацией соответствующей команды на подписчике.
На основании этих вычислений можно ответить на ряд вопросов, включая следующие:
Какому подписчику необходимо больше всего времени для получения изменения с издателя?
Который из подписчиков, ожидавших получение трассировочного маркера, не получил его (если таковой существует)?
Измерение задержки и проверка правильности соединений для репликации транзакций
MicrosoftSQL Server Management Studio: Как измерить задержку и проверить соединения для репликации транзакций (монитор репликации)
Программирование репликации на языке Transact-SQL: Как измерить задержку и проверить соединения для репликации транзакций (программирование репликации на языке Transact-SQL)
Программирование объектов RMO: Как измерить задержку и проверить соединения для репликации транзакций (программирование объектов RMO)
Трассировочные маркеры также могут быть полезны при «замораживании» системы, когда останавливаются все действия и проверяется получение всеми узлами всех необработанных изменений. Дополнительные сведения см. в разделе Как заморозить топологию репликации (программирование репликации на языке Transact-SQL).
Вопросы использования трассировочных маркеров
Для применения трассировочных маркеров необходимо пользоваться определенными версиями Microsoft SQL Server:
Распространитель должен быть Microsoft SQL Server 2005 или более поздней версии.
Издатель должен быть SQL Server 2005 или более поздней версии, либо издателем Oracle.
Для принудительных подписок статистика по трассировочным маркерам собирается с издателя, распространителя и подписчиков, если это подписчик Microsoft SQL Server 7.0 или более поздней версии.
Для подписок по запросу статистика по трассировочным маркерам собирается с подписчиков, только если это подписчик SQL Server 2005 или более поздней версии. Если это подписчик SQL Server 7.0 или Microsoft SQL Server 2000, то статистика собирается только с издателя и распространителя.
Следует также учитывать ряд других вопросов и ограничений:
Подписки должны быть активными, чтобы получать трассировочный маркер. Подписка является активной, если она инициализирована.
При повторной инициализации удаляются все отложенные трассировочные маркеры для соответствующих подписок.
Подписчики получают только трассировочные маркеры, созданные после их исходной синхронизации.
Трассировочные маркеры не пересылаются переиздающими подписчиками.