Длительная работа сервера 1С:Предприятия (несколько суток или недель) может в некоторых случаях приводить к эффекту фрагментации виртуального адресного пространства серверного приложения. Данный эффект порой усугубляется, если в процессе работы сервера многократно и параллельно исполнялись запросы к базе данных с очень длинными текстами (1 мегабайт и более). В результате фрагментации памяти иногда может наблюдаться снижение производительности сервера 1С:Предприятия и устойчивости сервера к параллельным операциям над большими объемами данных.
Для того, чтобы избежать возможного негативного влияния фрагментации памяти, желательно при разработке конфигураций учитывать рекомендации, касающиеся использования памяти. Также можно рекомендовать периодическую (в соответствии с наблюдениями, 1 раз в неделю, в месяц...) перезагрузку серверного приложения 1С:Предприятия. Для перезагрузки можно выбрать время, когда активная работа пользователей не ведется.
Перезагрузка сервера будет выполнена автоматически, если в течение некоторого времени (обычно 3 минут) к серверу 1С:Предприятия не подсоединен ни один пользователь. Если этого добиться затруднительно, то сервер можно перезагрузить принудительно при помощи утилиты Start/ Settings/ Control Panel/ Administrative Tools/ Component Services, на том компьютере, на котором установлен сервер 1С:Предприятия. Для этого в ней необходимо найти ветку Console Root/ Component Services/ Computers/ My Computer/ COM+ Applications/ 1CV8 и выполнить пункт Shut down ее локального меню.
Перезагрузка сервера может быть выполнена программно. Это можно сделать, например, при помощи следующего кода на встроенном языке 1С:Предприятия 8.0:
COMPlus = Новый COMОбъект("COMAdmin.COMAdminCatalog"); Приложения = COMPlus.GetCollection("Applications"); Приложения.Populate(); ПоследнийНомер = Приложения.Count - 1; Для Номер = 0 по ПоследнийНомер Цикл Приложение = Приложения.Item(Номер); Если Приложение.Name = "1CV8" Тогда COMPlus.ShutdownApplication(Приложение.Name); Прервать; КонецЕсли; КонецЦикла;
ВАЖНО!
Если в момент перезагрузки серверного приложения 1CV8 к нему были подсоединены пользователи, то их работа завершится аварийно. При этом какие-то данные могут оказаться не сохраненными.
|