Поделиться через


Настройка реестра агента сервера SQL Server Compact

В этом разделе описаны три параметра реестра, влияющие на работу агента сервера SQL Server Compact 3.5 (HKLM\Software\Microsoft\Microsoft SQL Server Compact Edition\v3.5\Transport). Изменение этих параметров позволяет принудительно применять ограничения системы безопасности и повысить производительность работы служб Microsoft IIS при выполнении синхронизации между Microsoft SQL Server Compact 3.5 и SQL Server.

USAGE

Раздел реестра USAGE позволяет разрешить или запретить конкретные типы синхронизации, которые может использовать агент сервера SQL Server Compact 3.5, запущенный на компьютере с сервером IIS. По умолчанию значение параметра равно равно 0, что позволяет использовать оба типа синхронизации — удаленный доступ к данным и репликацию слиянием. Если значение параметра равно 1, то для синхронизации используется только репликация слиянием, если 2 — только удаленный доступ к данным.

MAX_THREADS_PER_POOL

Параметр реестра MAX_THREADS_PER_POOL устанавливает максимальное число потоков для каждого из трех пулов, используемых агентом сервера SQL Server Compact 3.5. Значение по умолчанию — 20 потоков, однако может быть задано любое значение в диапазоне от 1 до 1000. Потоки распределяются динамически, а не во время запуска. Установленное по умолчанию значение 20 ограничивает общее число потоков, выделяемых на сервере IIS, 60 потоками. Ниже перечислены пулы потоков:

  • обработка файлов IN;

  • обработка файлов OUT;

  • вызов компонента SQL Server Reconciler.

Увеличение числа потоков не обязательно ведет к повышению производительности. Перед увеличением числа потоков необходимо оценить воздействие этих изменений на производительность, поскольку большее число потоков означает возрастание нагрузки на процессор. Число потоков следует увеличивать только если компьютер имеет высокопроизводительный процессор и существует достаточно много клиентов, которым необходимо выполнять синхронизацию одновременно.

MAX_PENDING_REQUEST

Раздел реестра MAX_PENDING_REQUEST имеет значение по умолчанию 500, минимально возможное значение ― 10 и максимально возможное ― 10000. При отсутствии свободных потоков (MAX_THREADS_PER_POOL) запросы отправляются в очередь в пул запросов. Используется ли эта возможность, зависит от того, хватает ли потоков для обработки всех запросов. В обычных условиях эта возможность использоваться не будет.