Как ускорить 1С за 5 минут – Протокол Shared Memory

Опубликовано Павел Путков 12.07.2018 0 Комментарии

В версии 8.2.17 платформы «1С: Предприятие 8» появилась интересная возможность ускорить 1С в том случае, когда сервер приложений и сервер СУБД находятся на одном компьютере.

Настройка ускорения делается очень просто и займет всего лишь несколько минут.

 

Что такое Shared Memory, для чего он нужен, и зачем его включать?

В режиме работы, задаваемом по умолчанию, Microsost SQL Server и сервер приложений «1С:Предприятия» работают друг с другом только через TCP/IP. Это выглядит правильным и логичным в случае работы серверов на разных компьютерах, иной возможности нет.

Но все меняется, когда серверы находятся на одной вычислительной системе: лучше и быстрее использовать оперативную память для обмена данными, используя протокол Shared Memory (общая память).

Этот протокол позволяет добиться увеличения скорости обмена данными между серверами за счет отсутствия передачи данных по сети, причем прирост производительности может составлять от 10 до 15%. Особенно заметно ускорение на операциях с частыми вызовами сервера.

 

Включение Shared Memory

Запускаем Диспетчер конфигурации SQL Server.

Производим следующую настройку SQL Native Client – Клиентские протоколы – Общая память – Включено = Да, нажимаем Ok. Перезапускаем службу SQL сервера

2

При этом отключение протокола TCP/IP необязательно.

 

Как проверить что 1С использует Shared Memory?

Существует два способа:

1. С помощью запроса в Management Studio

Запускаем на исполнение запрос:

Shared-memory-2

В результате получаем:

5

Во второй колонке видим результат «Shared Memory», то есть нужный нам протокол работает.

2. С помощью SQL Profiler

  • Заходим в базу 1С (для установления соединения с СУБД)
  • Запускаем SQL Profiler и подключаемся к нашему серверу СУБД
  • Включаем сбор события ExistingConnection, выполняя следующее:
    • На закладке «Выбор событий» включаем флаги «Показать все столбцы» и «Показать все события»
    • Выбираем класс событий «Sessions» и включаем событие «ExistingConnection»
    • По кнопке «Фильтры столбцов» устанавливаем фильтр на имя приложения

3

При трассировке увидим следующее:

4

В нижней части окна должна отображаться надпись: «network protocol: LPC», расшифровывается как «Local Procedure Call». Это говорит о том, что протокол Shared Memory включен и используется.

Некоторые источники отмечают, что данный протокол не начинал работать, пока в качестве сервера СУБД не прописали localhostдля информационной базы «1С:Предприятия».

 
 
Бурмистров Андрей
ВЗЯТО ОТСЮДА