Администрирование · 10 мин
Архитектура 1С: что это и как устроена система
Что такое архитектура 1С: клиент-серверная и файловая модели, уровни платформы, роли компонентов. Разбираем устройство системы и критерии выбора варианта развёртывания.
Архитектура 1С — это способ организации компонентов системы: где хранятся данные, где выполняется прикладная логика, как пользователи подключаются к базе и какие службы обеспечивают работу. Понимание архитектуры нужно не только разработчикам: от выбранной модели зависят скорость работы, надёжность, стоимость лицензий и возможности масштабирования.
Платформа «1С:Предприятие» построена по многоуровневому принципу. Пользователь видит только клиентское приложение, но за ним стоят сервер приложений, система управления базами данных и внутренние механизмы платформы. Каждый уровень можно разворачивать по-разному, и именно комбинация этих решений образует архитектуру конкретной системы.
На практике чаще всего выбирают между двумя базовыми вариантами: файловым режимом, где база лежит в общей папке, и клиент-серверным, где данными управляет отдельная СУБД. Ошибка на этом этапе приводит к типичным проблемам: база «тормозит» при росте числа пользователей, обновления требуют остановки работы всего офиса, а резервное копирование превращается в ручную процедуру.
Из каких уровней состоит система 1С
Классическая модель платформы включает три логических уровня. Первый — клиентский: тонкий клиент, толстый клиент или веб-клиент, через которые пользователь вводит данные и видит результат. Клиент отвечает за интерфейс и часть простых вычислений, но не хранит данные.
Второй уровень — сервер «1С:Предприятия». Он выполняет прикладной код, управляет транзакциями, блокировками, фоновыми заданиями и сеансами пользователей. Именно здесь работает кластер серверов, который при необходимости распределяет нагрузку между несколькими рабочими процессами и машинами.
Третий уровень — СУБД, где физически хранятся данные: Microsoft SQL Server, PostgreSQL, Oracle Database или IBM Db2. Платформа обращается к базе через собственные механизмы, поэтому прикладной разработчик не пишет SQL-запросы напрямую — он работает с объектами конфигурации, а платформа сама формирует обращения к СУБД.
Файловый и клиент-серверный режимы: в чём разница
В файловом режиме вся база — это файл 1Cv8.1CD в сетевой папке или на локальном диске. Уровни сервера и СУБД отсутствуют: каждый клиент сам читает и пишет данные в файл. Это просто и дёшево, но создаёт жёсткие ограничения по одновременной работе и объёму.
В клиент-серверном режиме между пользователем и данными стоят сервер 1С и СУБД. Клиенты не имеют прямого доступа к файлам базы, все операции проходят через сервер, который управляет блокировками и транзакциями. Это сложнее в администрировании, но даёт устойчивость к одновременной работе десятков и сотен пользователей.
| Параметр | Файловый режим | Клиент-серверный режим |
|---|---|---|
| Одновременная работа | Небольшое число пользователей, блокировки на уровне таблиц | Десятки и сотни пользователей, блокировки на уровне записей |
| Инфраструктура | Сетевая папка, без отдельного сервера | Сервер 1С + сервер СУБД |
| Резервное копирование | Копирование файла при отключённых пользователях | Штатные средства СУБД, в том числе без остановки работы |
| Отказоустойчивость | Низкая, риск повреждения файла при сбое сети | Резервирование кластера и СУБД |
| Стоимость | Минимальная | Лицензии на сервер 1С и СУБД (кроме бесплатных вариантов PostgreSQL) |
Какой вариант выбрать
Подходит для небольшой компании с единицами одновременно работающих пользователей и умеренным объёмом данных. Ограничение — быстрая деградация скорости при росте нагрузки.
Нужен при десятках пользователей, интенсивном документообороте, требованиях к бесперебойности и интеграциях. Ограничение — стоимость и необходимость администрирования.
Какие клиенты бывают и что выбрать пользователям
Тонкий клиент — основной вариант для большинства пользователей. Он передаёт на сервер только действия пользователя и получает готовые данные для отображения, поэтому умеренно требователен к каналу связи и может работать через интернет.
Веб-клиент работает в браузере и вообще не требует установки на компьютер. Это удобно для удалённых сотрудников, подрядчиков и руководителей, которым нужен доступ с любого устройства. Ограничение — не вся функциональность конфигурации доступна через веб-клиент, особенно операции с локальными файлами и оборудованием.
Толстый клиент выполняет значительную часть кода на компьютере пользователя. Сейчас его применяют в основном для административных задач, отладки и работы с внешними компонентами, которые невозможны в тонком клиенте. Для массового развёртывания он не рекомендуется из-за требований к ресурсам и каналу.
Роль конфигурации и где выполняется код
Конфигурация — это прикладное решение, построенное на платформе: справочники, документы, регистры, отчёты и алгоритмы на встроенном языке. Платформа — это «двигатель», конфигурация — конкретная бизнес-логика. Одна и та же платформа обслуживает «Бухгалтерию», «Управление торговлей» и любые отраслевые решения.
Код в конфигурации делится на клиентский и серверный. Серверный код выполняется на сервере 1С и имеет доступ к данным; клиентский работает на компьютере пользователя и не может напрямую обращаться к базе. Правильное разделение кода — важная часть архитектуры решения: чем больше логики на сервере, тем легче клиент и стабильнее работа по медленным каналам.
Как выбрать архитектуру под свою задачу
Ключевые факторы выбора — число одновременно работающих пользователей, объём базы, интенсивность записи документов, требования к времени простоя и бюджет. Формулируйте требования в конкретных цифрах: «30 пользователей, 500 документов в день, простой не более часа» — это основание для решения, а «работает медленно» — нет.
Для небольшой компании разумно начинать с файлового режима, но сразу заложить план перехода: следить за размером базы, временем выполнения типовых операций и количеством конфликтов блокировок. Эти показатели подскажут момент миграции раньше, чем пользователи начнут жаловаться.
Как выбрать действие
Безопасность и резервное копирование
Архитектура определяет и модель защиты. В клиент-серверном варианте пользователи не имеют доступа к файлам базы — аутентификацию выполняет платформа, а права разграничиваются ролями конфигурации. В файловом режиме любой, кто имеет доступ к сетевой папке, может скопировать или удалить базу целиком.
Резервное копирование тоже зависит от архитектуры. В клиент-серверном режиме используйте штатные средства СУБД: полные и разностные копии по расписанию, копии журналов транзакций. Копирование файла 1Cv8.1CD при работающих пользователях недопустимо — есть риск получить повреждённую копию.
Типичные ошибки при проектировании архитектуры
Самая частая ошибка — тянуть с переходом на клиент-серверный режим, пока файловая база не начнёт регулярно повреждаться при сбоях сети. Второй типичный просчёт — размещение сервера 1С и СУБД на одном слабом компьютере: формально архитектура трёхуровневая, фактически узкое место одно.
Ещё одна ошибка — игнорирование лицензионной модели. Серверная лицензия 1С и лицензии СУБД — отдельные статьи расходов, и их нужно учитывать до начала проекта, а не после покупки оборудования.
Что важно запомнить
Архитектура 1С — это уровни «клиент — сервер 1С — СУБД» и выбор между файловым и клиент-серверным режимом. Начинайте с простого варианта, но заранее следите за показателями нагрузки, настраивайте штатное резервное копирование и планируйте миграцию до появления сбоев.
Частые вопросы об архитектуре 1С
Чем платформа отличается от конфигурации?
Платформа — это технологическая основа: сервер, клиенты, механизмы хранения и исполнения кода. Конфигурация — прикладное решение (бухгалтерия, торговля, зарплата), созданное на этой основе. Платформу разрабатывает фирма «1С», конфигурации — «1С» и партнёры.
Можно ли перейти с файлового режима на клиент-серверный без потери данных?
Да. Базу выгружают в файл .dt через конфигуратор и загружают в новую информационную базу на сервере. Перед переходом сделайте резервную копию, после — проверьте целостность данных и работу ключевых операций.
Какая СУБД лучше для 1С?
Универсального ответа нет. Microsoft SQL Server удобен администрированием в Windows-инфраструктуре, PostgreSQL снижает стоимость лицензий. Выбор зависит от бюджета, компетенций администраторов и требований к нагрузке.
Нужен ли отдельный сервер для небольшой компании?
Для файлового режима — нет, достаточно надёжного компьютера или сервера с сетевой папкой. Для клиент-серверного режима серверная часть обязательна, но на старте сервер 1С и СУБД можно разместить на одной машине с достаточным объёмом памяти.
Что такое веб-клиент и когда он нужен?
Это доступ к базе через браузер без установки программы. Он нужен для удалённой работы и внешних пользователей, но требует публикации базы на веб-сервере и не поддерживает часть функций, например прямую работу с локальным оборудованием.
Как понять, что файловый режим уже не справляется?
Тревожные признаки: частые конфликты блокировок, заметное замедление проведения документов при одновременной работе, рост времени резервного копирования и случаи повреждения базы после сбоев сети или питания.