Как подобрать железо для мини-сервера 1С с файловыми базами и решить проблемы с лицензированием и производительностью?

Системный администратор 1С v8.3 (Управляемые формы) Бухгалтерский учет IT и автоматизация бизнеса
← На главную

Приступая к построению или модернизации мини-сервера для работы с файловыми базами 1С, мы сталкиваемся с рядом важных вопросов. Нам предстоит не только подобрать оптимальное аппаратное обеспечение, но и эффективно решить проблемы лицензирования, а также обеспечить стабильную и быструю работу системы. Рассмотрим ситуацию, когда планируется использование десктопного железа для мини-сервера 1С с 22 файловыми базами (БУХ, ЗиК, версии ПРОФ) для 4-5 пользователей, каждый из которых работает со своими базами. Предполагается запуск клиентов 1С через RemoteApp. Исходные данные для планируемого сервера включают Ryzen 5 7600X, 64 ГБ DDR5 5600 МГц, два M.2 NVMe диска в RAID 1 для баз, отдельный диск для бэкапов и SATA Samsung 860 EVO 500 ГБ для ОС Windows.

Разрешаем проблему с USB-ключами HASP для многопользовательской работы

Первоочередная задача, которая часто вызывает затруднения, связана с использованием USB HASP-ключей. Мы выяснили, что при подключении USB-ключей к "серверу" или при работе через RemoteApp/RDP возникает проблема: USB-ключи одного типа в один компьютер можно подключить только один. Драйвер HASP распознает лишь один такой ключ, что делает невозможным одновременную работу нескольких пользователей, если каждый из них использует свой USB-ключ.

Для решения этой критической проблемы мы можем рассмотреть следующие подходы:

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

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

  3. Ограничения RemoteApp/RDP. Подчеркнем, что использование RemoteApp или RDP для доступа к тонкому клиенту, когда клиентские лицензии представлены USB-ключами, не решает проблему. Сервер RemoteApp/RDP все равно будет видеть только один USB-ключ определенного типа, если они все однотипные, возвращая нас к исходной проблеме.

Оптимизируем аппаратное обеспечение мини-сервера 1С

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

  1. Процессор. Для файловых баз 1С, особенно при небольшом количестве пользователей, критически важна высокая тактовая частота процессора и производительность на одно ядро. Многоядерность не всегда дает пропорциональный прирост производительности, так как файловые базы часто ограничены скоростью дисковой подсистемы и эффективностью выполнения однопоточных операций. Предложенный вами Ryzen 5 7600X — это отличный выбор. Процессоры этого уровня, а также современные Intel Core i5/i7 последних поколений, будут более чем достаточны для обслуживания 4-5 пользователей и 22 файловых баз. Производительность на ядро у таких CPU очень высока, что положительно скажется на скорости выполнения операций в 1С.

  2. Оперативная память (ОЗУ). Мы проанализировали ситуацию и подтверждаем, что 64 ГБ DDR5, как вы планируете, является весьма адекватным объемом для сервера, обслуживающего 22 файловые базы и 4-5 пользователей. Однако, мы должны учитывать, что каждая активная сессия 1С, особенно на управляемых формах, может потреблять от 0.5 ГБ до нескольких ГБ ОЗУ. Кроме того, операционная система Windows Server также требует ресурсов. Если бюджет позволяет и предполагается рост числа пользователей или баз, увеличение объема ОЗУ до 128 ГБ может быть оправданным. Это обеспечит дополнительный запас по производительности, минимизирует использование файла подкачки (свопинг) и исключит возможные "тормоза", связанные с нехваткой оперативной памяти.

  3. Дисковая подсистема: ключ к производительности. Это один из самых, если не самый, критичных элементов для обеспечения высокой производительности файловых баз 1С. Скорость дисковых операций значительно влияет на общую скорость работы программы.

    1. NVMe SSD для баз данных и ОС. Мы настоятельно рекомендуем использовать два M.2 NVMe диска. Скорость случайного чтения/записи NVMe SSD значительно превосходит SATA SSD и тем более обычные HDD, что критически важно для работы 1С с файловыми базами. Использование одного быстрого NVMe для ОС и другого (или RAID 1 из двух) для баз 1С — это отличная практика, позволяющая изолировать дисковую нагрузку и предотвратить замедление работы ОС из-за интенсивной работы с базами.

    2. RAID 1 для NVMe дисков. Мы рассмотрим целесообразность использования RAID 1 (зеркалирование) для NVMe дисков. Хотя для небольшого количества пользователей и файловых баз нагрузки могут быть не экстремальными, RAID 1 имеет смысл для обеспечения отказоустойчивости и доступности данных. В случае выхода из строя одного диска, сервер продолжит работать без простоя, а замена диска может быть произведена без прерывания работы пользователей. Важно понимать, что RAID 1 — это больше про доступность, а не про максимальную скорость (которая для файловых баз в небольшой группе не всегда является узким местом). Для бухгалтерских и зарплатных конфигураций, которые обычно не требуют круглосуточной доступности 24/7, необходимость RAID 1 может быть предметом дискуссии. Однако, если бизнес не может позволить себе простой посреди рабочего дня на смену умершего диска и переналив из бэкапов с потенциальной потерей части данных, то RAID 1 будет обоснованным решением.

    3. Диск для резервных копий. Мы рекомендуем использовать отдельный SSD (например, SATA Samsung 860 EVO 500 ГБ или аналогичный) для временного хранения бэкапов перед их копированием на NAS или в облако. Это ускорит процесс резервного копирования и восстановления, а также снизит нагрузку на основные диски с базами.

Переходим на 64-битную платформу 1С:Предприятие

Мы выяснили, что одним из основных источников проблем со стабильностью и производительностью 1С, особенно при работе с большими базами или активными операциями, является использование 32-битной платформы 1С. Разберем, почему это так критично и как перейти на 64-битную версию.

  1. Критическая важность 64-битной платформы. Если вы сталкиваетесь с ошибками нехватки памяти, даже когда на сервере установлено достаточно физической ОЗУ (например, 16 ГБ или 32 ГБ), то переход на 64-битную платформу 1С является ОБЯЗАТЕЛЬНЫМ. Мы выяснили, что 32-битный процесс по своей природе не может использовать более 2 ГБ виртуальной памяти, независимо от общего объема физической оперативной памяти на сервере. Это ограничение часто приводит к сбоям, "вылетам" 1С и ошибкам типа "не хватает памяти" при выполнении ресурсоемких операций, таких как формирование сложных отчетов, проведение объемных документов или синхронизация данных между базами. Переход на 64-битную платформу позволит каждому процессу 1С использовать значительно больший объем оперативной памяти, что критически важно для стабильной и быстрой работы.

  2. Совместимость с ККТ (контрольно-кассовой техникой). Мы проанализировали ситуацию с подключением ККТ и выяснили, что проблемы, возникавшие ранее на 64-битных платформах, в основном устранены. Современные версии драйверов для большинства ККТ, включая популярные модели (например, Штрих), уже имеют 64-битные версии. Поэтому, если ранее вы не переходили на 64-битную платформу из-за проблем с ККТ, сейчас самое время обновить драйверы до актуальных версий и выполнить переход. Это должно решить большинство проблем совместимости.

  3. Публикация через веб-сервер и клиентские подключения. При использовании веб-сервера для доступа к базам 1С (через IIS или Apache) достаточно установить 64-битную платформу 1С на самом сервере. Клиентские приложения (тонкий клиент), которые пользователи запускают на своих рабочих местах, теоретически могут быть и 32-битными и подключаться к 64-битному веб-серверу 1С. Однако для обеспечения максимальной производительности и стабильности рекомендуется, чтобы и на клиентских машинах использовалась 64-битная платформа 1С. Это гарантирует, что весь стек технологий работает в оптимальном режиме. Также отметим, что веб-клиент (работа через браузер) не требует установки платформы 1С на клиентских машинах, что упрощает администрирование, но имеет некоторые функциональные ограничения по сравнению с тонким клиентом.

Выбираем веб-сервер: Apache или IIS?

Для публикации файловых баз 1С через веб-сервер мы имеем два основных варианта: Apache и IIS (Internet Information Services). Рассмотрим их особенности, чтобы помочь вам сделать информированный выбор.

  1. Apache. Мы обнаружили, что Apache часто считается более простым в настройке для публикации файловых баз 1С. Он также может быть менее требовательным к системным ресурсам по сравнению с IIS. Для многих системных администраторов Apache является надежным и проверенным решением, которое легко устанавливается и конфигурируется для задач 1С. Его простота и гибкость делают его предпочтительным выбором для небольших и средних инсталляций файловых баз.

  2. IIS. IIS глубоко интегрирован с операционной системой Windows Server, что может быть удобно для системных администраторов, привыкших к экосистеме Microsoft. Однако, как показывает опыт некоторых пользователей, могут возникать специфические проблемы с настройкой IIS, особенно при переходе на 64-битную платформу 1С или при публикации баз в определенной конфигурации. Это может потребовать более глубоких знаний в администрировании IIS и диагностике потенциальных конфликтов.

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

Организуем надежное резервное копирование

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

  1. Автоматизированное и регулярное резервное копирование. Мы настоятельно рекомендуем настроить автоматизированное и регулярное резервное копирование всех баз данных 1С. Это может быть реализовано с помощью скриптов, встроенных средств ОС или стороннего программного обеспечения. Регулярность копирования должна соответствовать вашим бизнес-требованиям, например, ежедневно или несколько раз в день.

  2. Копирование бэкапов на удаленные носители. Мы обеспечиваем дополнительный уровень безопасности, копируя созданные резервные копии на удаленные носители, такие как сетевое хранилище (NAS) или облачные сервисы (например, Яндекс.Диск). Это защитит данные от потери в случае выхода из строя основного сервера, стихийных бедствий или других инцидентов. Помните, что RAID 1 повышает доступность данных, но не отменяет необходимость полноценного резервного копирования, так как RAID 1 не защищает от случайного удаления файлов или повреждения данных.

Когда стоит задуматься о СУБД (SQL Server/PostgreSQL)?

Мы рассмотрим ситуации, когда файловые базы 1С, несмотря на все оптимизации, могут перестать быть оптимальным решением, и следует рассмотреть переход на полноценную систему управления базами данных (СУБД).

  1. Рост баз и числа пользователей. Если файловые базы продолжают активно расти в объеме, количество пользователей увеличивается сверх 5-7 человек, а проблемы с производительностью и стабильностью сохраняются даже после всех предпринятых мер (оптимизация железа, переход на 64-битную платформу, использование веб-сервера), то мы рекомендуем серьезно рассмотреть переход на клиент-серверный вариант работы с использованием СУБД.

  2. Преимущества СУБД. Использование полноценной СУБД, такой как Microsoft SQL Server или PostgreSQL, обеспечивает значительно более высокую производительность, надежность, масштабируемость и отказоустойчивость для больших и активно используемых баз 1С. СУБД оптимизированы для одновременной работы множества пользователей с большими объемами данных, предоставляя механизмы блокировок, транзакций и восстановления, которые файловый режим обеспечить не может.

← На главную