(репост из stackoverflow)
Я установил зеркальное отображение SQL-сервера, используя 2 стандартных редакции SQL Server 2005. Когда приложение подвергается стрессу, время отклика увеличивается в 10 раз. Я определил это по зеркалу, потому что пауза в зеркале показывает приемлемое время отклика.
Какие варианты доступны для повышения производительности? Обратите внимание, что я использую стандартную версию, поэтому отличный режим высокой производительности недоступен.
Сервер находится в той же стойке, подключен к гигабитному коммутатору.
Вот код, используемый для создания конечных точек:
CREATE ENDPOINT [Mirroring]
AUTHORIZATION [sa]
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATA_MIRRORING (ROLE = PARTNER, AUTHENTICATION = WINDOWS NEGOTIATE
, ENCRYPTION = REQUIRED ALGORITHM RC4)
Хотя приостановка зеркала помогает, это может не быть реальной причиной ваших проблем. По моему опыту, использование синхронного зеркала только удваивает время отклика. Если вы видите, что время отклика ухудшается с увеличением нагрузки, скорее всего, дело в чем-то другом.
Несколько вещей, о которых стоит подумать и попробовать:
Имеет ли связь между принципом и зеркалом достаточную пропускную способность, чтобы справиться с генерацией журнала транзакций в принципе?
Ваши файлы журналов оптимизированы? Смотрите эти ссылки:
http://www.sqlskills.com/BLOGS/KIMBERLY/post/8-Steps-to-better-Transaction-Log-throughput.aspx