Сервер и клиенты
страницаСервер и клиенты
На предыдущем занятии мы создали одну процедуру для обработки нескольких событий и поместили ее в общий модуль РаботаСДокументами. В свойствах этого общего модуля мы устанавливали флажки Клиент и Сервер. Объясним подробнее, откуда в «1С:Предприятии» взялись вообще какие-то «клиенты» и «серверы».
Система «1С:Предприятие» поддерживает два варианта работы системы: файловый и клиент-серверный.
Файловый вариант работы с информационной базой рассчитан на персональную работу одного пользователя или работу небольшого количества пользователей в локальной сети. В этом варианте все данные информационной базы (конфигурация, база данных, административная информация) располагаются в одном файле (рис. 5.46).

Рис. 5.46. Файловый вариант работы
Основное назначение файлового варианта — быстро и легко установить систему и работать с ней. Например, чтобы что-то посмотреть или доработать дома на ноутбуке. В файловом варианте тоже можно вести реальную учетную работу, но при этом нужно понимать, что он не предоставляет абсолютно всех тех же возможностей по масштабируемости, защите данных, какие имеет клиент-серверный вариант. Поэтому, если вы самостоятельно ведете бухгалтерский учет или у вас небольшой коллектив сотрудников, и вам не требуется гарантированная защита данных от несанкционированного использования сотрудниками, и вы имеете относительно небольшой объем данных, можно работать в файловом варианте. В остальных же случаях нужно использовать клиент-серверный вариант.
Клиент-серверный вариант предназначен для использования в рабочих группах или в масштабе предприятия. Он реализован на основе трехуровневой архитектуры «клиент-сервер» (рис. 5.47).

Рис. 5.47. Трехуровневая архитектура «1С:Предприятия»
Клиент-серверный вариант работы — это основной вариант для работы в многопользовательской среде с большим объемом данных. Он предоставляет абсолютно все возможности по масштабируемости, администрированию и защите данных. Однако он требует значительных усилий по установке и администрированию.
При этом физически серверная и клиентские части системы «1С:Предприятие» могут располагаться как на разных компьютерах, так и на одном. Главное, что пользователь не имеет непосредственного доступа к серверу баз данных, и это позволяет обеспечивать безопасность данных. А в файловом варианте база данных должна находиться на некотором общем сетевом ресурсе, доступном всем пользователям.
Система «1С:Предприятие» изначально рассчитана на клиент-серверный вариант работы. Хотя сейчас вы разрабатываете свою учебную конфигурацию в файловом варианте работы, она будет работать и в клиент-серверном варианте без ваших дополнительных усилий.
Прикладные решения разрабатываются один раз и одинаково работают, что в одном, что в другом варианте. То есть переход с одного варианта на другой не требует переделки конфигурации.
Это достигается за счет того, что конфигурация разрабатывается всегда исходя из клиент-серверной архитектуры. В системе «1С:Предприятие» просто нет возможности разрабатывать ее по-другому. И в том случае, когда используется файловый вариант работы, система при исполнении прикладного решения просто «имитирует» наличие сервера на клиентском компьютере.
Клиент-серверная архитектура разделяет всю работающую систему на три различные части, определенным образом взаимодействующие между собой, — клиент, сервер «1С:Предприятия» и сервер баз данных.
Клиентское приложение — это программа, часть системы «1С:Предприятие». Основное ее назначение — организация пользовательского интерфейса, отображение данных с возможностью их изменения. Кроме этого, клиентское приложение может исполнять код на встроенном языке (то есть какие-то алгоритмы разработчика), но оперирует при этом лишь очень ограниченным пространством типов встроенного языка. Такой подход позволяет клиентскому приложению быть очень «легким», не требовать много ресурсов, «путешествовать» по Интернету и работать даже в среде веб-браузеров.
Клиентское приложение взаимодействует с сервером «1С:Предприятия». Сервер «1С:Предприятия» — это тоже программа, часть системы «1С:Предприятие».
Одна из основных задач этой программы — передавать запросы от клиентского приложения к серверу баз данных и возвращать обратно клиенту результаты этих запросов.
Другая задача сервера — исполнение большинства алгоритмов на встроенном языке, подготовка данных для отображения форм, отчетов и т. д. То есть все сложные вычисления, требующие непосредственной работы с данными, исполняются именно на сервере. При этом на сервере доступно практически все пространство типов встроенного языка «1С:Предприятия» (за исключением, естественно, чисто интерфейсных типов, потому что у сервера нет никакой интерфейсной части, так как он общается не с пользователями, а только с другими программами: клиентским приложением и с сервером баз данных).
Сервер баз данных — это тоже программа. Она уже не является частью системы «1С:Предприятие», это специализированная программа, поставляемая сторонними производителями. Ее основное назначение — это организация и ведение баз данных — структурированных организованных наборов данных, описывающих характеристики каких-либо физических или виртуальных систем.
В настоящее время система «1С:Предприятие» может работать со следующими серверами баз данных:
- Microsoft SQL Server,
- PostgreSQL,
- IBM DB2,
- Oracle Database.