Один экземпляр ibsrv работает только с одной информационной базой. Запустить несколько экземпляров для общей базы тоже не получится. Эти ограничения описывают IS1C и Sysadminium.
Поэтому выбор начинается не с числа пользователей. ibsrv подходит для одной изолированной базы, которую не нужно распределять между серверными экземплярами. Если баз несколько или нужны отдельные узлы, сохраняйте кластер.
Готового порога по нагрузке нет. Опубликованные материалы не указывают, после какого числа пользователей пора переходить с ibsrv на кластер. Границу придётся искать на своей базе: замерять рабочие операции, следить за очередями и загрузкой оборудования.
Что меняется после отказа от кластера
В автономной схеме остаются серверный процесс ibsrv и консольная утилита ibcmd. Первый принимает подключения к одной базе через встроенный веб-сервер. Второй нужен администратору для работы из командной строки.
| Компонент | Что делает | Что меняется по сравнению с кластером |
|---|---|---|
ibsrv | Принимает подключения клиентов и обслуживает одну базу | Работает без менеджера кластера |
ibcmd | Выполняет административные команды из консоли | Через него администратор управляет автономным сервером |
| Встроенный веб-сервер | Принимает клиентские подключения по HTTP | Для публикации базы не нужны IIS или Apache |
Итог простой: компонентов меньше, но привычные средства управления кластером здесь не работают.
Infostart описывает ibsrv и ibcmd в материале «Тёмная сторона автономного сервера». Там же указано, что ibsrv обходится без менеджера кластера.
Схема стала короче, архитектурная граница осталась жёсткой. Один экземпляр обслуживает одну базу. Распределить ту же базу между несколькими экземплярами нельзя.
Отдельного мастера запуска нет. Сервер стартует из командной строки:
ibsrv [--parameter[=value]]
Список доступных параметров покажет команда:
ibsrv --help
Обе команды приведены в руководстве администратора 1С:Предприятия 8.3.27.
Командная строка имеет приоритет перед конфигурационным файлом. Если ibsrv открыл неожиданный порт или выбрал другой каталог, сначала посмотрите параметры процесса. Правка файла не перебьёт значение, которое уже передали при запуске.
Пять условий, при которых ibsrv подходит
Переход на автономный сервер имеет смысл, когда установка укладывается в пять условий:
- сервер работает с одной информационной базой;
- конфигурация использует режим управляемого приложения;
- всю нагрузку принимает один экземпляр сервера;
- интеграции не подключаются к базе через COM;
- установленная версия платформы поддерживает нужные клиентские приложения.
Если хотя бы один пункт не совпал, оставляйте кластер. Это не спор о том, какой сервер лучше. Так проходит граница возможностей ibsrv.
| Условие | ibsrv | Кластер | Решение |
|---|---|---|---|
| Одна изолированная база | Один экземпляр обслуживает одну базу | Поддерживает одну или несколько баз | Пробуйте ibsrv, если остальные ограничения не мешают |
| Несколько баз под общим управлением | Для каждой базы нужен отдельный экземпляр | Базы работают в общей серверной схеме | Сохраняйте кластер |
| Несколько экземпляров для одной базы | Такая схема не поддерживается | Базу можно распределить между узлами | Используйте обычный кластер 1С |
| Управляемое приложение | Поддерживается | Поддерживается | Можно проверять ibsrv |
| Обычное приложение | Не обслуживается | Поддержка зависит от конфигурации и платформы | Оставляйте кластер |
| COM-соединение с базой | Не поддерживается | Применяется в обычной серверной схеме | Не переносите базу на ibsrv |
| Тонкий или веб-клиент | Поддерживается | Поддерживается | Ограничение не мешает |
| Толстый клиент или конфигуратор | Поддерживается с платформы 8.3.23 | Поддерживается в серверной установке | Для ibsrv проверьте версию платформы |
Таблица отсекает несовместимые схемы до установки службы. Число пользователей на этом этапе ничего не решает.
Ограничения по числу баз, обычному приложению и клиентам описывает IS1C. Sysadminium указывает запрет COM-соединения и запуска нескольких экземпляров для одной базы.
Кластер нужен не только большой компании. Даже небольшая установка требует кластера, если одну базу нужно распределить между несколькими серверными экземплярами.
Какие базы и клиенты можно подключить
Если не передать параметр --dbms, автономный сервер откроет файловую базу. Такой порядок задаёт руководство администратора 1С:Предприятия 8.3.27.
Для базы на серверной СУБД параметр --dbms принимает четыре точных значения:
MSSQLServer
PostgreSQL
IBMDB2
OracleDatabase
Список взят из того же руководства. Другие обозначения добавлять по аналогии нельзя: ibsrv их не распознает.
С Microsoft SQL Server автономный сервер использует аутентификацию операционной системы. Имя пользователя и пароль СУБД в строке запуска не передают.
Комбинацию Microsoft SQL Server и Linux проверяйте отдельно. Sysadminium пишет, что автономный сервер на Linux не поддерживает MS SQL. В доступном фрагменте официального руководства такого ограничения нет. Сверьте это условие с документацией именно вашей версии платформы.
Регламентные задания поддерживаются — это подтверждает Sysadminium. Но одной отметки о поддержке мало. После пробного запуска проверьте обмены, загрузки, расчёты и обработку очередей своей конфигурации.
Тонкий и веб-клиент подключаются к автономному серверу. Толстый клиент и конфигуратор работают в этой схеме начиная с версии 8.3.23, по данным IS1C и Sysadminium.
Остаётся ещё одно ограничение: ibsrv обслуживает только управляемые приложения. Конфигурацию, которая зависит от режима обычного приложения, переносить на него нельзя.
Сеть: localhost подходит только для первой проверки
Встроенный HTTP-сервер по умолчанию слушает localhost на порту 8314. Оба значения указаны в руководстве администратора 1С:Предприятия 8.3.27.
Такой адрес годится для клиента на том же сервере. С другого компьютера подключение не пройдёт. Для работы по сети явно задайте адрес прослушивания и откройте нужное направление в межсетевом экране.
Встроенный веб-сервер не поддерживает HTTPS. Это ограничение приводят IS1C и Sysadminium. Не открывайте его HTTP-порт напрямую в недоверенную сеть.
При удалённом доступе разделите роли. ibsrv работает с базой, а внешний компонент принимает защищённое соединение. Конкретную схему выбирайте по устройству сети и требованиям к сертификатам.
Правила от обычного кластера сюда нельзя переносить вслепую. У автономного сервера другая точка входа. Проверьте адрес, порт и направление трафика, затем сверьтесь с правилами открытия портов 1С.
Лицензии зависят от типа базы и сеансов
Для файловой базы допускаются три одновременных клиентских сеанса без серверной лицензии. Это условие приводят IS1C и Sysadminium.
Фоновые задания в эти три сеанса не входят. Для работы ibcmd клиентская лицензия тоже не нужна. А тонкий клиент и конфигуратор клиентские лицензии требуют.
Здесь легко сделать неверный вывод: «для автономного сервера серверная лицензия не нужна». Это не так. Послабление действует только для файловой базы и только при лимите в три клиентских сеанса.
Если база работает на серверной СУБД, заранее проверьте лицензии платформы, клиентов и самой СУБД. Условия файлового варианта нельзя переносить на Microsoft SQL Server или PostgreSQL.
Проверка перед пробным запуском
До настройки службы пройдите по ограничениям в таблице. Так вы найдёте несовместимость раньше, чем начнёте перебирать параметры запуска.
| Проверка | Ожидаемый результат | Что остановит переход |
|---|---|---|
| Число баз | Один экземпляр получает одну базу | Нужно управлять несколькими базами как одной серверной схемой |
| Серверные экземпляры | Базу обслуживает один ibsrv | Требуется распределение между экземплярами |
| Режим приложения | Конфигурация работает как управляемое приложение | Нужен режим обычного приложения |
| Клиенты | Установленная платформа поддерживает все нужные клиенты | Нужен толстый клиент или конфигуратор при версии ниже 8.3.23 |
| Интеграции | Обмены не используют COM-соединение | Внешняя система подключается к базе через COM |
| СУБД | Значение --dbms входит в официальный список | Нужна другая СУБД или неподтверждённая связка с ОС |
| HTTP-доступ | Адрес и порт доступны только нужным клиентам | Требуется встроенный HTTPS |
| Лицензии | Учтены клиентские сеансы и тип базы | Расчёт опирается на льготу для другой схемы |
| Регламентные задания | Каждое нужное задание запускается и завершается | Обмен или расчёт остаётся в очереди |
Если запретов нет, готовьте отдельную копию базы. Рабочий экземпляр пока не меняйте.
Как провести пробный запуск
Для первого запуска выделите отдельный каталог данных. В Windows по умолчанию используется %LOCALAPPDATA%/1C/1cv8/ss-data/, согласно руководству администратора 1С:Предприятия 8.3.27.
Отдельный каталог не даст опытному экземпляру смешаться с остальными. Заодно будет проще проверить конфигурацию, журналы и права доступа.
Начните со справки:
ibsrv --help
Сопоставьте имена параметров с установленной версией платформы. Строка запуска из инструкции к другой версии может содержать неподходящие параметры.
После сверки задайте четыре группы настроек:
- отдельный каталог данных сервера;
- путь к файловой базе либо тип и реквизиты серверной СУБД;
- HTTP-адрес;
- HTTP-порт.
Относительный путь из --database-path отсчитывается от каталога данных сервера. Это поведение описано в руководстве администратора 1С:Предприятия 8.3.27. Для первого запуска лучше указать абсолютный путь: тогда рабочий каталог не повлияет на результат.
Запустите сервер и подключитесь каждым клиентом, который нужен пользователям. Не ограничивайтесь тонким клиентом администратора, если бухгалтеры или разработчики заходят иначе.
Потом переходите к регламентным заданиям. Дождитесь, пока завершится хотя бы одно задание каждого используемого типа. Запись в списке подтверждает наличие задания, но не его выполнение.
После этого проверьте административные операции через ibcmd. Подключитесь к серверу, прочитайте состояние базы и выполните команду, которая понадобится при сопровождении.
Если фактические порт или каталог расходятся с конфигурационным файлом, снова посмотрите строку запуска процесса. Переданные там параметры имеют приоритет. Изменение файла не исправит значение, которое пришло из командной строки.
Что считать успешной проверкой
Работающий процесс ibsrv ещё не означает, что база готова к переносу. Проверку можно закончить только после полного рабочего маршрута.
| Этап | Что сделать | Признак успеха |
|---|---|---|
| Старт | Запустить ibsrv с отдельным каталогом | Процесс использует ожидаемые адрес, порт и каталог |
| Подключение | Открыть базу каждым нужным клиентом | Клиент входит без смены рабочего сценария |
| Операции | Выполнить типовые действия пользователей | Нет ошибок режима приложения или подключения |
| Фоновые задания | Дождаться запуска и завершения заданий | Обмены и расчёты заканчиваются штатно |
| Администрирование | Подключить ibcmd и выполнить нужную операцию | Администратор может сопровождать базу через консольную утилиту |
| Сеть | Подключиться с разрешённого рабочего места | Порт открыт для нужного сегмента и закрыт для остальных |
| Возврат | Остановить опытный экземпляр и открыть исходную копию | Порядок отката понятен и не затрагивает единственный экземпляр базы |
Эта проверка отвечает на вопрос о совместимости базы с ibsrv. Запас по скорости и нагрузке она не показывает.
Не делайте вывод по одному времени входа. Проведите документы, сформируйте отчёты, дождитесь фоновых заданий и повторите проверку в пиковый период. Результат зависит от конфигурации, СУБД, оборудования и действий пользователей.
Если одной машины не хватает и работу нужно распределить между узлами, переходите к схеме кластера из двух серверов. В ней сохраняется кластерная архитектура, а роли делятся между машинами.
Правило выбора на сегодня
Берите ibsrv для одной управляемой базы, которую обслуживает один серверный экземпляр. До перехода исключите COM-соединения и проверьте поддержку нужных клиентов в своей версии платформы.
Оставляйте кластер, если с одной базой должны работать несколько экземпляров. Он же нужен для общего управления несколькими базами.
Перед переносом рабочей базы:
- подтвердите версию 8.3.23 или новее для толстого клиента и конфигуратора;
- проверьте режим приложения, COM-интеграции, ОС и СУБД;
- спроектируйте сетевой доступ с учётом отсутствия HTTPS в
ibsrv; - запустите копию базы и проверьте клиентов, задания и
ibcmd; - замерьте рабочие операции под своей нагрузкой.
Выбирайте ibsrv по архитектуре базы, а не ради короткой установки. Если выбор зависит от нагрузки конкретной конфигурации, понадобится консультация по вашей серверной схеме, а не чужой порог пользователей.