Автоматический перезапуск рабочих процессов (rphost) кластера 1с

Установка HASP License Manager

Дистрибутив HASP License Manager можно найти на сайте компании SafeNet. При установке в ОС Windows нужно будет выбрать вариант установки — приложение или служба, обычно выбирают службу:

В ОС Linux установка HASP LM выглядит немного сложнее. Архив с сайта SafeNet содержит два RPM-пакета для RedHat и SuSE (вероятно, для этих систем установка HASP LM достаточно проста) и запакованный файл hasplm для всего остального. Следуя инструкции с сайта ИТС у меня не получилось запустить файл hasplm на Ubuntu 16.04.

Поэтому пришлось воспользоваться решением от компании Etersoft. Идем на FTP компании и находим нужную версию. Для моей 64-х битной Ubuntu 16.04 я выбрал эту версию: http://ftp.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.04/. Скачиваем файлы и в начале устанавливаем необходимые пакеты, в моем случае потребовалось установить пакет make:

и пакет libc6-i386 (несмотря на то, что я скачал 64-х битную версию HASP LM, он, по сути, остается 32-х битным приложением и ему требуются 32-х битные библиотеки):

sudo apt-get install libc6-i386

после этого устанавливаем пакеты HASP LM:

sudo dpkg -i haspd_7.60-eter1ubuntu_amd64.deb

sudo dpkg -i haspd-modules_7.60-eter1ubuntu_amd64.deb

sudo service haspd restart

Как видно из скриншота, файл с настройками находится тут: /etc/haspd/hasplm.conf .

Часто встречающиеся ошибки 1С и общие способы их решения Промо

Статья рассчитана в первую очередь на тех, кто недостаточно много работал с 1С и не успел набить шишек при встрече с часто встречающимися ошибками. Обычно можно определить для себя несколько действий благодаря которым можно определить решится ли проблема за несколько минут или же потребует дополнительного анализа. В первое время сталкиваясь с простыми ошибками тратил уйму времени на то, чтобы с ними разобраться. Конечно, интернет сильно помогает в таких вопросах, но не всегда есть возможность им воспользоваться. Поэтому надеюсь, что эта статья поможет кому-нибудь сэкономить время.

Сервер 1С:Предприятие на Ubuntu 16.04 и PostgreSQL 9.6, для тех, кто хочет узнать его вкус. Рецепт от Капитана

Если кратко описать мое отношение к Postgres: Использовал до того, как это стало мейнстримом.
Конкретнее: Собирал на нем сервера для компаний среднего размера (до 50 активных пользователей 1С).
На настоящий момент их набирается уже больше, чем пальцев рук пары человек (нормальных, а не фрезеровщиков).
Следуя этой статье вы сможете себе собрать такой же и начать спокойную легальную жизнь, максимально легко сделать первый шаг в мир Linux и Postgres.
А я побороться за 1. Лучший бизнес-кейс (лучший опыт автоматизации предприятия на базе PostgreSQL).
Если, конечно, статья придется вам по вкусу.

Копирование числовых ячеек из 1С в Excel Промо

Решение проблемы, когда значения скопированных ячеек из табличных документов 1С в Excel воспринимаются последним как текст, т.е. без дополнительного форматирования значений невозможно применить арифметические операции. Поводом для публикации послужило понимание того, что целое предприятие с более сотней активных пользователей уже на протяжении года мучилось с такой, казалось бы на первый взгляд, тривиальной проблемой. Варианты решения, предложенные специалистами helpdesk, обслуживающими данное предприятие, а так же многочисленные обсуждения на форумах, только подтвердили убеждение в необходимости описания способа, который позволил мне качественно и быстро справиться с ситуацией.

Автокликер для 1С

Внешняя обработка, запускаемая в обычном (неуправляемом) режиме для автоматизации действий пользователя (кликер). ActiveX компонента, используемая в обработке, получает события от клавиатуры и мыши по всей области экрана в любом приложении и транслирует их в 1С, получает информацию о процессах, текущем активном приложении, выбранном языке в текущем приложении, умеет сохранять снимки произвольной области экрана, активных окон, буфера обмена, а также, в режиме воспроизведения умеет активировать описанные выше события. Все методы и свойства компоненты доступны при непосредственной интеграции в 1С. Примеры обращения к компоненте представлены в открытом коде обработки.

1 стартмани

1С:Предприятие Бухгалтерия переход с редакции 2.0 на 3.0. Практика перевода информационной базы для работы в управляемом приложении. Промо

Из информационного выпуска 1С № 16872 от 08.07.2013г. стало известно об относительно скором необходимом переходе на редакцию 1С:Бухгалтерия 3.0. В данной публикации будут разобраны некоторые особенности перевода нетиповой конфигурации 1С:Бухгалтерия 2.0 на редакцию 3.0, которая работает в режиме «Управляемое приложение».
Публикация будет дополняться по мере подготовки нового материала. Публикация не является «универсальной инструкцией».

Update 3. Права доступа. 14.08.2013
Update 4. Добавлен раздел 0. Дополнен раздел 4. Добавлен раздел 7. Внесены поправки, актуализирована информация. 23.11.2013.

1 стартмани

Запуск Apache 2.4 с модулем 1С внутри Docker контейнера

Про Apache и про Linux слышали, наверное, все. А вот про Docker пока нет, но он сильно набирает популярность последнее время и не зря. Поделюсь своим опытом и дам пошаговую инструкцию настройки веб-сервера Apache с модулем 1С внутри Docker контейнера на Linux хосте. При этом сам сервер 1С может находиться совсем на другой машине и на другой операционной системе

Это не важно, главное чтобы Apache смог достучаться до сервера 1С по TCP. В статье дам подробное пояснение по каждой используемой команде со ссылками на документацию по Docker, чтобы не создавалось ощущение непонятной магии

Также прилагаю git репозиторий с описанием всей конфигурации, можете попробовать развернуть у себя буквально за 10 минут.

Копирование числовых ячеек из 1С в Excel Промо

Решение проблемы, когда значения скопированных ячеек из табличных документов 1С в Excel воспринимаются последним как текст, т.е. без дополнительного форматирования значений невозможно применить арифметические операции. Поводом для публикации послужило понимание того, что целое предприятие с более сотней активных пользователей уже на протяжении года мучилось с такой, казалось бы на первый взгляд, тривиальной проблемой. Варианты решения, предложенные специалистами helpdesk, обслуживающими данное предприятие, а так же многочисленные обсуждения на форумах, только подтвердили убеждение в необходимости описания способа, который позволил мне качественно и быстро справиться с ситуацией.

Как автоматически заполнить обработкой табличную часть документа «Ввод начальных остатков» (Тип операции = «Расчеты с партнерами»). 1С: ERP

В 1С: ERP (релиз 2.4.8.82) есть документ «Ввод начальных остатков». Он предназначен для переноса остатков из старых учетных программ при переходе на работу в новой конфигурации.
В инструкциях на официальном сайте 1С пользователям новой конфигурации 1С: ERP предлагается заполнить этот документ. Каким образом они будут заполнять, не уточняется. Можно предположить, что предлагается интерактивно, вручную, ввести эти документы. Это следует из картинок в инструкции 1С.
В данной статье я предлагаю способ автоматического программного заполнения документа «Ввод начальных остатков» с помощью обработки «Загрузка данных из табличного документа». При этом способе заполнения, время на процесс переноса остатков сокращается в десятки или даже сотни раз.

1 стартмани

АЦРК: Многовариантный автоматический запрет редактирования (для конфигурации УТ 10.3)

В этой статье описывается усовершенствованная технология автоматической установки даты запрета редактирования
Во-первых, можно определить несколько стратегий запрета редактирования с разными параметрами. Например, запрет в днях, запрет доступа в предыдущие месяцы кварталы и т.п., с указанием отступа от текущей даты.
То есть для некоторых пользователей (рядовых менеджеров) при входе в базе будет устанавливаться запрет по вчерашний день, для других (старших менеджеров) на 5 дней назад, для третьих (администраторов базы или руководителей отдела) — запрет предыдущего месяца с отступом в 10 дней..
Во-вторых, запрет будет устанавливаться для ВСЕХ без исключения пользователей базы данных. Для самых привилегированных это будет максимальная глубина, но запрет будет установлен.
Управление этой системой осуществляется через механизм дополнительных прав пользователей.
При необходимости пользователь с полными правами может открыть для себя закрытый период, но только на текущий сеанс работы.

1 стартмани

Сервер 1С:Предприятие на Ubuntu 16.04 и PostgreSQL 9.6, для тех, кто хочет узнать его вкус. Рецепт от Капитана

Если кратко описать мое отношение к Postgres: Использовал до того, как это стало мейнстримом.
Конкретнее: Собирал на нем сервера для компаний среднего размера (до 50 активных пользователей 1С).
На настоящий момент их набирается уже больше, чем пальцев рук пары человек (нормальных, а не фрезеровщиков).
Следуя этой статье вы сможете себе собрать такой же и начать спокойную легальную жизнь, максимально легко сделать первый шаг в мир Linux и Postgres.
А я побороться за 1. Лучший бизнес-кейс (лучший опыт автоматизации предприятия на базе PostgreSQL).
Если, конечно, статья придется вам по вкусу.

Удаление неактивных и повторно запущенных пользователем сеансов — обработкой в фоне или внешней обработкой

На экране монитора при запуске конфигурации нередко приходится видеть обидное сообщение «Не обнаружено свободной лицензии». Особенно это актуально, когда у вас 100 лицензий и при этом работает порядка 90 пользователей. При этом, очень актуальна жесткая политика — «Один сеанс в одни руки». Для автоматизации ручной работы администратора 1С по удалению сеансов пользователей и предназначена данная обработка. Обработка может быть использована как внешняя, так и поставлена в дополнительные отчеты и обработки с установкой расписания запуска, в этом случае обработка будет выполняться как фоновое задание. Обработка предназначена для работы в клиент-серверных базах и тестировалась на платформе 8.3.14.1854. Обработка установленная на платформе не ниже 8.3.6, позволяет управлять сеансами конфигураций установленных на платформе 8.2

1 стартмани

Настройка выполнения *.bat по расписанию

Как я уже говорил выше, выполнение скрипта у меня происходит автоматически, каждый день он запускается ежечасно с 00:00 до 7:00. Сейчас я расскажу, как это сделано у меня.

Для начала идем в «Пуск -> панель управления -> Администрирование» и запускаем там «Планировщик заданий«.

Выбираем пункт «Создать задачу«:

На вкладке «Общие» задаем имя задания, его описание и пользователя, от которого оно будет выполняться. По умолчанию там будет пользователь, под которым вы вошли в данный момент в систему.

Далее идем в закладку Триггеры и настраиваем, когда нам надо запускать задачу. В моем случае это ежедневно выполнять в 00:00 и повторять ее каждый час в течении 7 часов.

Далее идем во вкладку Действия и создаем действие на выполнения скрипта.

Все, на этом все готово. Как можем увидеть в журнале, задача с такими параметрами успешно выполняется и ровно то время, которое у нас задано в скрипте:

Копирование числовых ячеек из 1С в Excel Промо

Решение проблемы, когда значения скопированных ячеек из табличных документов 1С в Excel воспринимаются последним как текст, т.е. без дополнительного форматирования значений невозможно применить арифметические операции. Поводом для публикации послужило понимание того, что целое предприятие с более сотней активных пользователей уже на протяжении года мучилось с такой, казалось бы на первый взгляд, тривиальной проблемой. Варианты решения, предложенные специалистами helpdesk, обслуживающими данное предприятие, а так же многочисленные обсуждения на форумах, только подтвердили убеждение в необходимости описания способа, который позволил мне качественно и быстро справиться с ситуацией.

Запуск Apache 2.4 с модулем 1С внутри Docker контейнера

Про Apache и про Linux слышали, наверное, все. А вот про Docker пока нет, но он сильно набирает популярность последнее время и не зря. Поделюсь своим опытом и дам пошаговую инструкцию настройки веб-сервера Apache с модулем 1С внутри Docker контейнера на Linux хосте. При этом сам сервер 1С может находиться совсем на другой машине и на другой операционной системе

Это не важно, главное чтобы Apache смог достучаться до сервера 1С по TCP. В статье дам подробное пояснение по каждой используемой команде со ссылками на документацию по Docker, чтобы не создавалось ощущение непонятной магии

Также прилагаю git репозиторий с описанием всей конфигурации, можете попробовать развернуть у себя буквально за 10 минут.

Универсальный редактор реквизитов объектов. Мультиобработчик Промо

Объекты: Справочник, Документ, ПланОбмена, ПВХ, Бизнес-процесс, Задача, ПланСчетов, ПВР.
Мультиобработчик:
-Проведение, перенумерация, движения, копирование, создание на основании, подчиненность, статистика, удаление документов.
-Регистрация изменений объекта(ов) в планах обмена.
-Установка/Отключение ГлавногоУзла РИБ.
-Поиск и восстановление «Битых» ссылок.
-Недопустимые символы XML/Дерево XML.
-Поиск и замена ссылок.
-Ошибки ИБ, в т.ч XML.
-Множество обработок справочников.
-GUID. Дата и время создания объектов ссылочного типа.
-Аналитика предопределенных, блокируемых реквизитов, ХранилищаЗначений.
-История изменений объекта.
-Активные пользователи.
-Подписки на события, функциональные опции.
-Загрузка пользователей ИБ из Windows, Active Directory.
-Выгрузка/Загрузка пользователей ИБ в/из внешний XML-файл.
-Поддержка различных режимов модальности.
Файловый, Клиент-Серверный варианты.
Обычная и Управляемая формы.

1 стартмани

28.12.2011   
181805   
8925   
StepByStep   

422
   

Удаление неактивных и повторно запущенных пользователем сеансов — обработкой в фоне или внешней обработкой

На экране монитора при запуске конфигурации нередко приходится видеть обидное сообщение «Не обнаружено свободной лицензии». Особенно это актуально, когда у вас 100 лицензий и при этом работает порядка 90 пользователей. При этом, очень актуальна жесткая политика — «Один сеанс в одни руки». Для автоматизации ручной работы администратора 1С по удалению сеансов пользователей и предназначена данная обработка. Обработка может быть использована как внешняя, так и поставлена в дополнительные отчеты и обработки с установкой расписания запуска, в этом случае обработка будет выполняться как фоновое задание. Обработка предназначена для работы в клиент-серверных базах и тестировалась на платформе 8.3.14.1854. Обработка установленная на платформе не ниже 8.3.6, позволяет управлять сеансами конфигураций установленных на платформе 8.2

1 стартмани

13.11.2019   
5827   
18   
IVC_goal   

11
   

Администрирование конфигураций 1С (недокументированные особенности работы)

Многие мои коллеги по работе и по профессии, уверен, сталкиваются с аналогичными ситуациями, когда программа 1С при работе с конфигурацией, мягко говоря, работает «странно». Как говорит один хороший знакомый (к слову, один из авторов УТ 11):
— «вот, ну согласись, нанять пару серьезных методистов — реальных дядечек с реального производства, до начала разработки — единственная ЭЛЕМЕНТАРНАЯ политика, как можно было этого не сделать???? там их НЕТ. Причем это 0 в плане затрат на разработку, там нет ограничений бюджета, это просто самый тупой прокол.»
В этой статье приведу способы лечения пресловутых проколов (за последний месяц).

Автокликер для 1С

Внешняя обработка, запускаемая в обычном (неуправляемом) режиме для автоматизации действий пользователя (кликер). ActiveX компонента, используемая в обработке, получает события от клавиатуры и мыши по всей области экрана в любом приложении и транслирует их в 1С, получает информацию о процессах, текущем активном приложении, выбранном языке в текущем приложении, умеет сохранять снимки произвольной области экрана, активных окон, буфера обмена, а также, в режиме воспроизведения умеет активировать описанные выше события. Все методы и свойства компоненты доступны при непосредственной интеграции в 1С. Примеры обращения к компоненте представлены в открытом коде обработки.

1 стартмани

Универсальный редактор реквизитов объектов. Мультиобработчик Промо

Объекты: Справочник, Документ, ПланОбмена, ПВХ, Бизнес-процесс, Задача, ПланСчетов, ПВР.
Мультиобработчик:
-Проведение, перенумерация, движения, копирование, создание на основании, подчиненность, статистика, удаление документов.
-Регистрация изменений объекта(ов) в планах обмена.
-Установка/Отключение ГлавногоУзла РИБ.
-Поиск и восстановление «Битых» ссылок.
-Недопустимые символы XML/Дерево XML.
-Поиск и замена ссылок.
-Ошибки ИБ, в т.ч XML.
-Множество обработок справочников.
-GUID. Дата и время создания объектов ссылочного типа.
-Аналитика предопределенных, блокируемых реквизитов, ХранилищаЗначений.
-История изменений объекта.
-Активные пользователи.
-Подписки на события, функциональные опции.
-Загрузка пользователей ИБ из Windows, Active Directory.
-Выгрузка/Загрузка пользователей ИБ в/из внешний XML-файл.
-Поддержка различных режимов модальности.
Файловый, Клиент-Серверный варианты.
Обычная и Управляемая формы.

1 стартмани

Журнал регистрации 1С (sql lite) в web app

Данная публикация рассматривает построение компонентного решения работы журнала регистрации в стороннем приложении(web app).

Встала задача миграции sql lite жр во внешнюю базу.

Данное решение было создано:

1. для хранения жр за весь период

2. для ускорения работы с жр

3. для ускорения сервера предприятия, так как именно он (а точнее рагент) пытается записать данные в жр sql lite(фактически файл на диске), после увеличения размера файла более 10 гб, поступали жалобы по вопросу быстродействия 1с (и не только ради этого)

Данная публикация может быть полезной администраторам, программистам, оптимизаторам.

1 стартмани

Соединения кластера

Утилита администрирования кластера серверов позволяет посмотреть список соединений:

  • кластера в целом (ветка “Центральные серверы 1С:Предприятия 8.1/ / Кластеры/ / Соединения”);
  • рабочего процесса (ветка “Центральные серверы 1С:Предприятия 8.1/ / Кластеры/ / Процессы/ / Соединения” или ветка “Центральные серверы 1С:Предприятия 8.1/ / Кластеры/ / Рабочие серверы/ / Процессы/ / Соединения”);
  • информационной базы (ветка “Центральные серверы 1С:Предприятия 8.1/ / Кластеры/ Информационные базы/ / Соединения”).

Среди соединений имеются:

  • пользовательские соединения (1С:Предприятие, Конфигуратор, COM-соединения, WS-соединение, Фоновое задание, Консоль кластера, COM-администратор)
  • служебные соединения (Планировщик заданий, Отладчик)

Пользовательские соединения относятся к информационной базе и видны в списке соединений:

  • своей информационной базы;
  • своего рабочего процесса;
  • кластера в целом.

Служебные соединения не относятся к конкретной информационной базе и видны в списках соединений:

  • своего рабочего процесса;
  • кластера в целом.

Служебных соединений “Планировщик заданий” может быть несколько. Они устанавливаются в процессе работы кластера, и их количество зависит от нагрузки на кластер и от выполняемых действий. Эти соединения использует не только планировщик фоновых и регламентных заданий, но и:

Администрирование конфигураций 1С (недокументированные особенности работы)

Многие мои коллеги по работе и по профессии, уверен, сталкиваются с аналогичными ситуациями, когда программа 1С при работе с конфигурацией, мягко говоря, работает «странно». Как говорит один хороший знакомый (к слову, один из авторов УТ 11):
— «вот, ну согласись, нанять пару серьезных методистов — реальных дядечек с реального производства, до начала разработки — единственная ЭЛЕМЕНТАРНАЯ политика, как можно было этого не сделать???? там их НЕТ. Причем это 0 в плане затрат на разработку, там нет ограничений бюджета, это просто самый тупой прокол.»
В этой статье приведу способы лечения пресловутых проколов (за последний месяц).

Как «перезапустить» сервер приложений 1С

Иногда сервер приложений занимает всю память и ее надо освободить.

Можно презапустить службу 1С, но это может привести к тому, что сеансы пользователей, которые работаю с данными, завершаться аварийно.

Есть возможность перезапустить рабочие процессы сервера приложений без заверешния работы пользователей.

Для этого в консоли сервера выбираем процесс, который занял больше всего памяти и открываем его свойства.

В свойствах процесса указываем Использование = Не использовать. Нажимаем ОК.

Без паники. Все сеансы пользователей автоматически перейдут на другие рабочие процессы. Проверено на практике (много раз).

Дожидаемся, пока процесс не завершится:

Примечание: сеанс Конфигуратора не переносится с процесса на процесс.

После этого повторяем обратную операцию. Открываем свойство остановившегося рабочего процесса, указываем Использование = Использовать.

Ждем. При первом подключении выделяется память:

Все. Память освободилась. Начинается новая жизнь.

Также можно настроить автоматический перезапуск сервера.

Специальные предложения

это делает намного проще. В кластере устанавливаем порог допустимого объема памяти см. приложение.

+ Упустил главный момент необходимо поставить “Интервал превышения допустимого объема памяти __ секунд”

p.s. Работает как часы, версия платформы 8.2.15.310

Выдержка из документации:

Интервал перезапуска __ секунд

Интервал времени после запуска процесса, по истечении которого рабочий процесс перезапускается. Нулевое значение означает, что рабочие процессы не будут перезапускаться автоматически.

Допустимый объем памяти __ KB

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

Интервал превышения допустимого объема памяти __ секунд

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

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

Вот нашел, начались сыпаться вот такие ошибки (УПП, в базе находилось примерно 200 пользователей):

1. При записи какого либо объекта, в данном примере, документа “Заявка на расходвание средств”: Ошибка при выполнении обработчика – ‘ПередЗаписью’ по причине: : Ошибка при получении значения атрибута контекста (НаличиеОбменаУПП) по причине: Попытка получения неинициализированного значения параметра сеанса

2. При входе в систему сразу выдавала ошибку: “Таблица не найдена “Справочник.Пользователи”. и кнопка “Завершить работу”

Раньше таких ошибок не возникало, началось именно после того, как мы добавили наживую рабочие процессы. Ошибки возникали хаотично, беглый анализ показал, ошибки появляются у тех пользователей которых сервер начал перекидывать с одного процесса на другой распределяя нагрузку. В начале пытались выкидывать этих пользователей из базы и после того как они заходили заново ошибка уходила, но как оказалось не надолго. Помучавшись два дня, в конечном итоге, вырубили всех пользователей, добавили заново рабочие процессы, перезапустири службу и проблем больше не было. И в инсрукции к серверу явно написано нужно перезапускать, но как всегда начинаешь их читать когда уже проблемы возникли.

Раздел поясняет влияние соединений с кластером на управление рабочими процессами.

Универсальный редактор реквизитов объектов. Мультиобработчик Промо

Объекты: Справочник, Документ, ПланОбмена, ПВХ, Бизнес-процесс, Задача, ПланСчетов, ПВР.
Мультиобработчик:
-Проведение, перенумерация, движения, копирование, создание на основании, подчиненность, статистика, удаление документов.
-Регистрация изменений объекта(ов) в планах обмена.
-Установка/Отключение ГлавногоУзла РИБ.
-Поиск и восстановление «Битых» ссылок.
-Недопустимые символы XML/Дерево XML.
-Поиск и замена ссылок.
-Ошибки ИБ, в т.ч XML.
-Множество обработок справочников.
-GUID. Дата и время создания объектов ссылочного типа.
-Аналитика предопределенных, блокируемых реквизитов, ХранилищаЗначений.
-История изменений объекта.
-Активные пользователи.
-Подписки на события, функциональные опции.
-Загрузка пользователей ИБ из Windows, Active Directory.
-Выгрузка/Загрузка пользователей ИБ в/из внешний XML-файл.
-Поддержка различных режимов модальности.
Файловый, Клиент-Серверный варианты.
Обычная и Управляемая формы.

1 стартмани

Настройка автоматического перезапуска рабочих процессов rphost.exe сервера 1С 8.3

2019-08-16 · Posted in 1С:Предприятие 8.1/8.2/8.3

Иногда, при экономии на “железе” мы сталкиваемся с проблемой дефицита оперативной памяти. Если среди работающих программ есть сервер 1С:Предприятие то он может быть одним из виновников этой проблемы. Рабочий процесс сервера 1С – rphost имеет обыкновение разрастаться до очень больших, зачастую кратно превышающих размер самих баз 1С размеров. Для профилактики такого поведения средствами 1С можно настроить автоматический перезапуск рабочих процессов сервера 1С:Предприятия. Итак, настраиваем автоматический перезапуск rphost:

Для этого:

1. Открываем консоль администрирования серверов 1С Предприятия;

2. Разворачивая дерево центрального сервера до кластеров и выделим интересующий наc кластер. Если мы хотим настроить параметры перезапуска для одного сервера в кластере с несколькими серверами, то вместо кластера стоит выбрать сервер.

перезапуска рабочих процессов rphost.exe

3. Открываем свойства выделенного кластера(или сервера) и видим меню настройки рабочих процессов:

перезапуска рабочих процессов rphost.exe

В полученном меню нас интересует:

  • Интервал перезапуска — время в секундах через которое процесс rphost будет независимо от его размера принудительно перезапущен. На картинке указан интервал в 24 часа.
  • Допустимый объем памяти — объем памяти, в килобайтах пределах которого рабочий процесс может без проблемно работать. При превышении указанного объёма в течении времени указанного в графе “Интервал превышения допустимого объема памяти” процесс rphost будет принудительно перезапущен. На картинке указан размер 1 гигабайт. Отсчет времени начинается когда память занятая рабочим процессом превысит указанную величину
  • Интервал превышения допустимого объема памяти — Интервал в секундах. Таймера запускается в момент превышения допустимого объёма памяти и отсчитывает указанное количество секунд, после чего будет запущен новый рабочий процесс rphost, на который передаются все соединения, старый процесс помечается как выключенный.
  • Выключенные процессы останавливать через — время в секундах, через которое будет остановлен рабочий процесс, помеченный как выключенный, если указано значение 0, то процесс не будет завершен.

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

Настройка автоматического перезапуска рабочих процессов сервера 1С:Предприятия процесс индивидуальный. Она устраняет неприятные последствия утечки памяти, однако при каких комбинациях настроек будет быстрее и стабильнее работать конкретно ваша система, вам предстоит установить экспериментально.

Скрипт перезапуска службы агента сервера 1С

В данном разделе я приведу скрипт .bat, который у меня получился, а так же дам краткое описание того, что за что отвечает в моем случае.

Давайте рассмотрим его подробнее:

  1. Первым делом отключаем уведомления о выполнении, пусть это все работает в фоновом режиме
  2. Далее указываем где будет хранится наш лог-файл, куда будет писаться дата и время запуска и остановки службы (можно не писать лог, но на всякий случай пусть будет)
  3. Пишем в Лог дату и время начала остановки
  4. Останавливаем службу агента сервера, в моем случае она называется так — 1C:Enterprise 8.3 Server Agent (1640) и пишем ее статус в лог файл (ниже приведу пример что в логе появляется)
  5. Далее делаем задержку в 15 секунд, чтобы дождаться, пока служба останавливается (пинг равен примерно 1 секунде, первый проходит моментально, поэтому делаем время в секундах +1)
  6. Опять записываем в лог дату в время
  7. Запускаем службу обратно
  8. Делаем задержку в 5 минут, если служба не остановилась за 15 секунд, то она не запустится естественно, что то видимо зависло сильно и будем ждать 5 минут.
  9. Далее проверяем, запустилась ли служба и работает ли она? Если не работает, то выполняем ее повторный старт.
  10. Завершаем работу с cmd.

Все, вот такой вот получился скрипт

Я не программист, поэтому может он не совсем верный с точки зрения выполнения сценариев и программного кода, но для меня важно, чтобы это работало — а это работает! Данный скрипт у меня выполняется каждый день, каждый час с 00:00 до 7:00, но об этом позже

12.10.2017 0:00:00,10 Служба «Агент сервера 1С:Предприятия 8.3 (1640)» останавливается. Служба «Агент сервера 1С:Предприятия 8.3 (1640)» успешно остановлена. 12.10.2017 0:00:15,33 Служба «Агент сервера 1С:Предприятия 8.3 (1640)» запускается. Служба «Агент сервера 1С:Предприятия 8.3 (1640)» успешно запущена. 12.10.2017 1:00:00,15 Служба «Агент сервера 1С:Предприятия 8.3 (1640)» останавливается. Служба «Агент сервера 1С:Предприятия 8.3 (1640)» успешно остановлена. 12.10.2017 1:00:15,37 Служба «Агент сервера 1С:Предприятия 8.3 (1640)» запускается. Служба «Агент сервера 1С:Предприятия 8.3 (1640)» успешно запущена.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Техноарена
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: