05.10.2011

Система 1С:Предприятие 8 имеет хорошие возможности масштабирования. Она позволяет работать как в файловом варианте, так и с использованием технологии «клиент-сервер».

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

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

Для больших рабочих групп и в масштабах предприятия может применяться клиент-серверный вариант работы, основанный на трехуровневой архитектуре с использованием сервера 1С:Предприятия 8 и Microsoft SQL Server. Он обеспечивает надежное хранение данных и их эффективную обработку при одновременной работе большого количества пользователей.

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

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


Файл-серверный вариант работы 1С:Предприятие 8

Данный вариант ориентирован на работу одного человека или небольшой группы пользователей в локальной сети. При этом все данные информационной базы (ИБ) «1С:Предприятия 8» хранятся в одном файле 1Cv8.1CD, операции с которым выполняет собственный движок базы данных «1С:Предприятия». Конечный пользователь имеет дело с клиентским приложением, которое самостоятельно взаимодействует с ИБ.

Файл-серверный вариант работы 1СБлагодаря своей простоте файловый вариант имеет целый ряд преимуществ. Прежде всего, он обеспечивает легкость установки и эксплуатации «1С:Предприятия», поскольку для работы с ИБ не требуются дополнительные программные средства, достаточно иметь операционную систему и платформу «1С:Предприятие».

Он также обеспечивает высокую целостность информационной базы и простое создание резервных копий. Например, в отличие от версии 7.7, совершенно исключена ситуация, когда пользователь может по ошибке (например, при копировании информационной базы) перепутать различные файлы ИБ и, таким образом, привести систему в неработоспособное состояние. Резервное копирование может осуществляться на файловом уровне путем простого копирования 1Cv8.1CD.

Однако есть и ограничения. Наиболее важная особенность файлового варианта — использование табличных блокировок базы данных. Внешне это проявляется в возникновении конфликтов блокировок при одновременной интенсивной работе большого количества пользователей. Кроме того, есть ограничение объема данных, хранимых в ИБ. Файл 1Cv8.1CD имеет специальный формат, в котором данные каждой таблицы хранятся в трех внутренних файлах, и по технологическим причинам размер каждого из них не может превышать 4 Гбайт.
Файловый вариант подразумевает наличие общего информационного ресурса, доступного всем пользователям системы. В некоторых случаях это может не соответствовать требованиям безопасности данных, принятым в конкретной организации.


Клиент-серверный вариант работы 1С:Предприятие 8

Клиент-серверный вариант работы (КСВР) платформы предназначен для использования в рабочих группах или в масштабе предприятия. Он реализован на основе трехуровневой архитектуры, которая подразумевает наличие клиентского приложения, сервера «1С:Предприятия 8» и сервера баз данных (MS SQL Server или PostgreSQL). Сервер «1С:Предприятия» реализован как приложение COM+, и механизм COM+ используется для его взаимодействия с клиентскими приложениями.

Режим клиент-сервер

Этот вариант сложнее, но дает целый ряд преимуществ по сравнению с файловым. Прежде всего, сервер «1С:Предприятия 8» и MS SQL Server могут располагаться физически как на одном компьютере, так и на разных. Это позволяет администратору при необходимости распределять нагрузку между ними.

Использование сервера «1С:Предприятия 8» дает возможность выполнять на нем наиболее объемные операции по обработке данных. Например, при выполнении даже весьма сложных запросов программа, работающая у пользователя, будет получать только необходимую ей выборку, а вся промежуточная обработка будет выполняться на сервере. Обычно увеличить мощность сервера проще, чем обновить весь парк клиентских машин.

Другие важные аспекты использования трехуровневой архитектуры — удобство администрирования и упорядочивание доступа пользователей к ИБ. Пользователь не должен знать о физическом расположении ИБ, так как весь доступ к данным осуществляется через сервер «1С:Предприятия 8.0». При обращении к той или иной ИБ нужно указать только имя компьютера, на котором функционирует сервер «1С:Предприятия», и имя ИБ. 


Неоспоримое преимущество КСВР — использование возможностей SQL Server для эффективной выборки информации. Например, механизм запросов «1С:Предприятия» оптимизирован под эту СУБД для выполнения расчетов и составления отчетов. Например, просмотр больших динамических списков выполняется с минимальным количеством обращений к СУБД, и при этом пользователь может осуществлять эффективный поиск, а также настройку отбора и сортировки данных. Еще одна важная возможность — использование блокировок на уровне записей и полей базы данных, что значительно увеличивает параллельность работы пользователей по сравнению с файловым вариантом работы. 

  1С:Предприятие 8 использует возможности MS SQL Server для эффективной выборки информации:

  • механизм запросов ориентирован на максимальное использование MS SQL Server для выполнения расчетов и составления отчетов;
  • просмотр больших динамических списков обеспечивается без выполнения большого количества обращений к базе данных; при этом пользователю предоставляются возможности эффективного поиска, а также настройки отбора и сортировки.

Развертывание клиент-серверного варианта и его администрирование выполняется довольно просто. Например, создание базы данных производится непосредственно в процессе запуска конфигуратора (так же, как и для файлового варианта). В поставку системы входит утилита администрирования клиент-серверного варианта работы, позволяющая администратору управлять информационными базами и подключением пользователей.


Работа встроенного языка на сервере 1С:Предприятие 8

Отдельно следует остановиться на том, что средства встроенного языка «1С:Предприятия» при работе в КСВР позволяют организовать выполнение различных процедур и функций прикладного решения либо на клиенте, либо на сервере «1С:Предприятия». Для этого используются специальные свойства модулей и операторы препроцессора #Если Сервер Тогда и #Если Клиент Тогда

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

И все же КСВР тоже имеет свои ограничения, которые определяются вместе с тем и используемой СУБД. Однако следует отметить, что MS SQL Server вполне удовлетворяет задачам, на решение которых ориентирована система «1С:Предприятие».
Операторы препроцессора 1С
Кратко остановимся на некоторых деталях реализации клиент-серверного варианта работы. Как уже говорилось, сервер «1С:Предприятия 8» представляет собой рабочий процесс, который выполняется на некотором компьютере. 

Этот процесс может обслуживать сразу несколько соединений с клиентскими приложениями и несколько соединений с серверами баз данных. Таким образом, сервер «1С:Предприятия» позволяет различным пользователям одновременно работать с разными ИБ. При этом в локальной сети могут существовать несколько компьютеров, на которых функционирует сервер «1С:Предприятия». В этом случае каждый из них будет обслуживать собственный набор ИБ. Это позволяет распределять нагрузку между различными компьютерами при работе с разными информационными базами.

Однако платформа 8 не предоставляет возможности использовать несколько серверов «1С:Предприятия» для одновременной работы с одной и той же информационной базой. Таким образом, количество эффективно обслуживаемых клиентских соединений с одной ИБ напрямую зависит как от технологических особенностей сервера «1С:Предприятия», так и от производительности компьютера, на котором он функционирует. Например, серверу «1С:Предприятия» доступно не более 2 или 3 Гбайт виртуального адресного пространства, причем это адресное пространство делится между всеми пользователями, которых он обслуживает. Понятно, что при достаточно большом количестве пользователей может снижаться эффективность работы сервера из-за нехватки памяти.

Система «1С:Предприятие» допускает различные варианты взаимного расположения клиентского приложения, сервера «1С:Предприятия» и сервера баз данных на компьютерах. Наиболее желательно расположение всех трех приложений на разных компьютерах. В данном случае все компоненты системы смогут полностью задействовать аппаратные ресурсы и работать с максимальной производительностью. Этот вариант использования также предоставляет лучшие возможности для масштабирования системы, поскольку модифицировать аппаратные средства можно независимо, исходя из реальной загрузки того или иного сервера.

При умеренной нагрузке и небольших объемах вычислений, выполняемых на сервере «1С:Предприятия», его возможно размещать на одном компьютере с SQL-сервером. Такой вариант является более дешевым, но менее производительным. Работа обоих серверов на одном компьютере предъявляет, в частности, повышенные требования к объему оперативной памяти, которая активно используется как одним, так и другим приложением.

Можно разместить все три приложения на одном компьютере, это имеет смысл делать только при разработке прикладных решений одним программистом.

Использование различных вариантов работы системы «1С:Предприятие 8»

При выборе того или иного варианта работы системы «1С:Предприятие» следует прежде всего исходить из решаемых задач, а также из возможностей и ограничений, характерных для каждого из вариантов.

Для реальной многопользовательской работы, безусловно, следует выбирать клиент-серверный вариант. Файловый же вариант работы следует использовать в тех случаях, когда главными оказываются требования мобильности, простоты установки и администрирования, дешевизны, а вопросы производительности, параллельности работы пользователей, объема хранимых данных не принципиальны.

Система «1С:Предприятие» позволяет достаточно просто переводить ИБ из клиент-серверного варианта работы в файловый и наоборот. Для этого используется возможность преобразования ИБ в файл и обратно в режиме конфигурирования системы. Это выполняется в три этапа:

  • выгрузка ИБ в файл;
  • создание пустой ИБ в том варианте работы, который требуется;
  • загрузка ИБ из файла.  


Возврат к списку