Клиент-серверный вариант 1С
Клиент-серверный вариант 1С — это архитектура развёртывания программных продуктов платформы «1С:Предприятие», при которой прикладное решение (конфигурация) выполняется на нескольких взаимосвязанных компьютерах, разделённых на клиентские рабочие места и сервер (или кластер серверов). В отличие от файлового варианта, где все данные и логика обработки находятся в одном файле базы данных, доступном по сети, клиент-серверная архитектура предполагает централизованное хранение и обработку данных на сервере, а на клиентах — только отображение интерфейса и ввод данных. Данная архитектура обеспечивает более высокую производительность, масштабируемость и надёжность для систем с большим количеством пользователей и объёмом данных.
Архитектура
Клиент-серверный вариант 1С базируется на трехуровневой модели «клиент — сервер «1С:Предприятия» — сервер базы данных». Каждый уровень выполняет строго определённые функции.
Клиентское приложение
Клиентская часть представлена тонким клиентом или веб-клиентом. Тонкий клиент — это отдельное приложение, которое устанавливается на компьютер пользователя. Он отвечает только за визуализацию интерфейса, обработку событий ввода (нажатие клавиш, клики мыши) и отправку запросов на сервер. Вся бизнес-логика (расчёты, проверки, запросы к базе данных) выполняется на сервере. Веб-клиент работает через браузер и не требует установки на рабочее место, но функционально аналогичен тонкому клиенту.
Сервер «1С:Предприятия»
Сервер «1С:Предприятия» (сервер приложений) является центральным звеном. Он принимает запросы от клиентов, исполняет код конфигурации (встроенный язык 1С), управляет сеансами пользователей и взаимодействует с сервером базы данных. Сервер может быть развёрнут как на одном компьютере, так и в виде кластера из нескольких серверов для повышения отказоустойчивости и производительности. Кластер серверов «1С:Предприятия» управляется специальной службой — менеджером кластера, который распределяет нагрузку и обеспечивает бесперебойную работу.
Сервер базы данных
Сервер базы данных отвечает за хранение, извлечение и модификацию данных. В качестве сервера базы данных в клиент-серверном варианте 1С могут использоваться:
- Microsoft SQL Server — наиболее распространённая СУБД в корпоративной среде.
- PostgreSQL — свободная СУБД, получившая широкое распространение в России, особенно после ухода Microsoft с рынка.
- IBM Db2 — ранее поддерживалась, но в современных версиях платформы её использование ограничено.
Сервер базы данных не содержит кода конфигурации 1С — он лишь хранит таблицы, индексы и выполняет SQL-запросы, поступающие от сервера приложений.
История
Клиент-серверный вариант появился в платформе «1С:Предприятие 8.0», которая была выпущена в 2003 году. До этого, начиная с версии 7.7, использовался исключительно файловый режим, который имел ограничения по производительности и надёжности при работе с большим количеством пользователей (обычно более 10–20).
Переход на клиент-серверную архитектуру был обусловлен ростом популярности 1С в крупных компаниях, где требовалась одновременная работа сотен сотрудников. Первоначально поддерживался только Microsoft SQL Server. В версии 8.1 (2006 год) была добавлена поддержка PostgreSQL, что позволило снизить стоимость лицензирования. В последующих версиях (8.2, 8.3) архитектура была оптимизирована: появился кластер серверов, улучшена работа с блокировками и транзакциями.
Отличия от файлового варианта
Основные различия между файловым и клиент-серверным вариантами:
| Характеристика | Файловый вариант | Клиент-серверный вариант |
|---|---|---|
| Хранение данных | В одном файле (1CD) на сетевом диске | В СУБД (SQL Server, PostgreSQL) |
| Обработка данных | На клиентском компьютере | На сервере приложений |
| Максимальное количество пользователей | Обычно до 20–30 | Практически не ограничено (сотни и тысячи) |
| Блокировки при записи | Блокируется весь файл | Блокируются только отдельные записи |
| Отказоустойчивость | Низкая (сбой клиента может повредить базу) | Высокая (транзакции, резервное копирование на уровне СУБД) |
| Сложность администрирования | Низкая | Высокая (требуется квалифицированный администратор) |
| Требования к сети | Высокие (постоянный обмен большими объёмами данных) | Низкие (передаются только результаты запросов) |
Преимущества
- Масштабируемость. Возможность добавления новых серверов в кластер для обработки растущей нагрузки без изменения клиентских мест.
- Производительность. Сложные расчёты и отчёты выполняются на мощном сервере, а не на слабом клиентском компьютере.
- Надёжность. Использование транзакций СУБД гарантирует целостность данных даже при сбоях. Автоматическое восстановление после отказа сервера.
- Безопасность. Доступ к данным контролируется на уровне сервера базы данных, что позволяет разграничивать права пользователей и защищать информацию от несанкционированного доступа.
- Поддержка большого числа пользователей. Одновременная работа сотен и тысяч сотрудников без снижения скорости.
Недостатки
- Сложность развёртывания. Требуется установка и настройка сервера приложений и СУБД, что предполагает наличие квалифицированного ИТ-персонала.
- Стоимость. Лицензии на клиент-серверный вариант 1С и на СУБД (например, Microsoft SQL Server) стоят значительно дороже файловых версий. PostgreSQL является бесплатной, но требует затрат на администрирование.
- Зависимость от серверной инфраструктуры. При выходе из строя сервера работа всех пользователей останавливается.
- Необходимость регулярного обслуживания. Требуется мониторинг производительности, настройка резервного копирования, обновление версий платформы и СУБД.
Применение
Клиент-серверный вариант 1С используется в организациях, где требуется одновременная работа более 20–30 пользователей, а также в случаях, когда критична высокая производительность и надёжность. Типичные сценарии применения:
- Крупные промышленные предприятия (учёт производства, склад, финансы).
- Холдинги и сети розничной торговли (централизованный учёт, обмен данными между филиалами).
- Государственные учреждения (бюджетный учёт, расчёт зарплаты).
- Компании с территориально распределённой структурой (использование веб-клиента для удалённого доступа).
Интересные факты
- В версии платформы 8.3 появилась возможность работы в клиент-серверном варианте через веб-клиент, что позволяет использовать 1С на любых устройствах с браузером, включая планшеты и смартфоны.
- Кластер серверов «1С:Предприятия» может включать до 32 серверов, что обеспечивает практически неограниченную масштабируемость.
- При переходе с файлового на клиент-серверный вариант данные конвертируются в формат СУБД с помощью специальной утилиты, входящей в состав платформы.
Источники
- Документация к платформе «1С:Предприятие 8.3» (раздел «Клиент-серверный вариант работы»).
- Книга «1С:Предприятие 8.3. Практическое пособие разработчика» (М. Г. Радченко, Е. Ю. Хрусталёва).
- Официальный сайт фирмы «1С» (раздел «Технологии»).
- Статья «Архитектура клиент-серверного варианта 1С» на портале «Инфостарт».
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →