Главная страница Visual 2000 · Общий список статей

Платформа "1С:Предприятие 8.1" уже на подходе

Андрей Колесов

© Андрей Колесов, 2006
Авторский вариант. Статья была опубликована c незначительной литературной правкой в журнале BYTE/Россия (N 09/2006, с. 27)


Выпустив летом 2003 года платформу "1С:Предприятие 8.0"...

Выпустив летом 2003 года платформу "1С:Предприятие 8.0", фирма "1С" начала новый этап развитие своего экономического ПО, основной вектор которого можно кратко охарактеризовать так – продвижение в сторону сегмента средних и крупных заказчиков на основе более масштабируемых и функциональных прикладных решений. Сейчас компания готовится сделать следующий шаг: в июле она объявила о выпуске бета-версии нового варианта платформы "1С:Предприятие 8.1" (1С:8.1), которая в окончательном виде должна появиться на рынке уже в конце нынешней осени.

Хотя номер версии меняется всего на 0.1, и, как уверяют разработчики "1С", данная модификация платформы обеспечит практически полную совместимость с прикладными продуктами 8.0, на самом деле речь идет о весьма серьезной внутренней архитектурной и технологической реконструкции системы с целью повышения масштабирования прикладных решений в условиях создания современных корпоративных систем управления предприятиями. В официальном комментарии “1С” по этому поводу говорится: “Часть изменений ориентирована не столько на функциональность 8.1, сколько являются фундаментом для будущего развития. Кроме того, многие архитектурные изменения позволят нам опробовать подходы к построению системы, которые мы сможем более активно применять в будущем”.

Судите сами: в системе "1С:Предприятие 8.1" появилась поддержка серверных кластеров, “родной” режим работы сервера в среде Linux, возможность использования СУБД PostgreSQL, расширенное применение технологий XML и Open Source. А в недалеком будущем можно ожидать появление декларативная модель для разработки пользовательских интерфейсов, создание тонкого клиента и многое другое.

Однако прежде, чем рассказать о новшествах 8.1, полезно дать общую картину развития всего комплекса ПО "1С:Предприятие".

В начало статьи

От 7.7 к 8.1

Хотя “1С:Предприятие 8.0” имеет уде трехлетний стаж пребывания на рынке, тем не менее до сих пор она часто сопровождается определением “новая”. Тому есть несколько объективных причин. Прежде всего, отметим, что цикл обновления базовых технологий существенно длительнее, чем прикладных решений (версия 7.0 была впервые представлена в 1996 г., а за последующие семь лет были сделаны еще два ее модернизированных варианта — 7.5 и 7.7).

Кроме того, отличительной особенностью "1C" (по сравнению с многими другими поставщиками софта, не только экономического) является то, что с выпуском новых версий продуктов, предыдущие варианты также продолжают продавать и поддерживаться. Так с появлением версии 8.0 прикладные решения на базе 7.7, по-прежнему, поставляются и покупаются (по итогам 2005 г. соотношение продаж 7.7 / 8.0 составило 60% / 40%, хотя доля 7.7 со временем заметно сокращается).

Но самое главное, “восьмерка” не стоит на месте и постоянно развивается. С лета 2003-го выпущено уже 15 релизов, и некоторые из них были вполне достойны того, чтобы изменить номер версии хотя бы на одну десятую. Правда, эти обновления были в основном связаны с расширением прикладного функционала платформы (в том числе с появлением качественно новых возможностей, таких, например, как управление бизнес-процессами, поддержка распределенных баз данных, Web-решения). Теперь же подходит момент для модернизации базовых технологий.

Чтобы оценить серьезность предполагаемых новшеств, полезно вспомнить некоторые “исторические” концепции, на которых до сих пор стоилась система “1С”. Это использование исключительно платформы Microsoft, ориентация на архитектуру “толстого” клиента (даже в клиент-серверном варианте) и очень сильная тяга к применению собственных компонентных технологических решений. Похоже, что в 8.1. разработчики из “1С” решились на преодоление этих рамок.

В начало статьи

Новшества платформы 8.1

Обратим внимание еще раз: модернизация в новой версии включает в основном изменения на уровне ядра платформы. Хотя тут речь пойдет о важных качественных моментах, эти новшества потребуют минимальной коррекции (или же она вообще не потребуется) существующих прикладных решений.

В начало статьи

В начало статьи

Что ожидается в дальнейшем

О планах развития платформы 8.0 фирма "1С" впервые полуофициально объявила на проходившей в конце февраля в Москве партнерской конференции. Тогда же было сказано, что модернизация будет проходить в два этапа, в виде реализации ближних и дальних планов создания "1С:Предприятия 8.1". Судя по представленной тогда информации нынешний вариант бета-версии – это выполнение "ближних" задумок.

На следующем этапе развития системы (о сроках которого "1С" пока ничего не говорит) речь идет о внешне довольно простых вещах, за которыми на самом деле стоит очень серьезная внутренняя модернизация, открывающая большие перспективы для развития платформы. Тут важно то, что данные изменения непосредственно затронут прикладные решения (в отличие от уже сделанного в 8.1).

В первую очередь это будет создание новой технологической модели пользовательского интерфейса на основе к декларативному описанию визуальных объектов без использования программирования. Такой подход в целом вполне согласуется с общими тенденциями в области разработки современного ПО -- в качестве примера скажем о презентационной технологической слое Windows Presentation Foundation (Avalon) в Windows Vista/Longhorn. Впрочем, первые шаги в этом направлении "1С" уже сделала в 8.1 в виде нового механизма построения отчетов. В будущем серьезные изменения произойдут в глобальном пользовательском командном интерфейсе. Помимо решения задач по упрощению поддержки прикладных решений и внедрения больших комплексных систем это позволит создавать клиентские приложения для разных операционных платформ.

Вторая группа новшеств данного этапа связана с перераспределением функций между серверной и клиентской частью платформы. До настоящего времени "1С" ориентировалась в целом на идеологию “толстого” клиента — на него возлагались основные задачи управления пользовательским интерфейсом и бизнес-логикой. В будущем эти функции должны перейти к серверу "1С:Предприятия", что позволит реализовать подход тонкого клиента и "легких" приложений (только управление пользовательским интерфейсом). В целом преимущества такого подхода очевидны (рис. 7): повышение масштабируемости, упрощение реализации распределенных неоднородных систем. В выступлениях в феврале представителей “1С” было также сказано о создании нового Web-клиента с использованием JavaScript и DHTML (возможно, речь идет об использовании подхода AJAX, см. "AJAX – это интересно и очень перспективно", BYTE 07/2006).

Рис. 7. Архитектура тонкого клиента

В начало статьи

Эволюционно-революционный переход

Комментируя еще полгода назад планы выпуска новой версии платформы, директор "1С" Борис Нуралиев сделал особый акцент на то, что переход на нее будет носить сугубо эволюционный, поэтапный характер, инвестиции, сделанные партнерами в освоение и заказчиками во внедрение ПО версии 8.0, сохранятся в максимальной степени. Развитие приложений на основе текущей версии платформы будет продолжаться. Что же касается более ранних продуктов, то фирма “1С” в настоящее время продолжает не только продавать решения 7.7, но также и обеспечивать техническую поддержку более ранних версий “1С:Бухгалтерии”, в том числе и для DOS.

В момент выпуска 1С:8.1 (июль 2006 г.) было сказано, что появление финальной версии 8.1 планируется на октябрь -- ноябрь текущего года. В заявлении “1С” говорится, что в ней могут появиться еще некоторые новые механизмы, но основная работы сейчас будет сводиться к оптимизации работы системы. Стоит также подчеркнуть еще раз, что разработчики намерены обеспечить практически полную совместимость с прикладными решениями 8.0.

Характеризуя в целом развитие платформы "1С:Предприятия", нужно отметить, что речь сегодня идет не только о повышении ее масштабируемости и производительности. На примере 8.1 мы видим появление еще одного вектора – поддержку многоплатформенности и широкое применение отраслевых базовых технологий Open Source. Помимо решения задач развития бизнеса собственно "1С", такая тенденция может оказать заметное влияние на ситуацию на софтверном отечественном рынке в целом (см. по этому поводу "1С", Microsoft, Linux и т. д.", PC Week/RE № 10/2006, с. 39, ).

В начало статьи

ВРЕЗКА 1. Тестирование "1С:УПП" на масштабируемость

Повышение производительности и масштабирования – это одно из ключевых направления развития ПО "1С:Предприятие". Исследование именно этих характеристик "1С:Предприятия 8.0" на примере решения "Управление торговлей" было проведено фирмой "1С" еще в конце 2003 года (см. PC Week/RE № 09/2004, с. 44). Его задачей было показать преимущества архитектуры новой платформы по сравнению с ее предыдущей версией 7.7 в условиях повышения объемов запросов на обработку документов и формирования запросов.

Нынешней весной "1С" представила результаты нового тестирования, выполненного применительно к своему флагманскому продукту "1С:Управление производственным предприятием" (1С:УПП). На этот раз цель была гораздо скромнее – подтвердить возможности масштабируемости многофункционального решения 1С:УПП при одновременной работе большого количества пользователей.

Исследование выполнялось на примере операций, наиболее критичных с точки зрения нагрузки на вычислительную систему, и при параметрах, типичных для большинства организаций заказчиков. Использовался клиент-серверный вариант 1С:УПП, при этом сервера "1С:Предприятия" и базы данных были установлены на разных компьютерах. Работа пользователей (от 1 до 150) – запись и проведение документа эмулировалась программным образом, при этом автомат между вводом документов делал паузу 60 секунд. Но, несмотря на это, интенсивность ввода информации все равно была в несколько раз выше по сравнению с реальными условиями.

Тестирование проводилось для документов различного объема – 5, 20 и 40 строк, а также двух разных степеней конкурентности номенклатуры во водимых данных: когда наборы товаров у тестовых пользователей вообще не пересекаются и когда они совпадают в каждом четвертом случае.

Анализ представленных результатов исследования позволяет сделать следующие основные выводы:

  1. В максимальном тестовом варианте при одновременной работе 150 тестовых пользователей (для документов объемом 40 строк) система обрабатывала более 300 тысяч вводимых строк в час (рис. 1). Причем этот режим еще очень далек от пределов возможностей решения по нагрузке.
  2. Объем обрабатываемой информации рос практически прямо пропорционально увеличению входной нагрузки (количества одновременно работающих пользователей), при этом количество обработанных документов (в среднем – 8 тыс. в час) практически не зависит от объема документа. Характер зависимости говорит о том, что система справляется с данной нагрузкой, и не достигла насыщения (предела пропускной способности), то есть при дальнейшем росте количества пользователей, объем информации, обрабатываемой системой в единицу времени, будет возрастать.
  3. Другой важной характеристикой является время записи и проведения одного документа, для различной степени конкуренции вводимых данных (рис. 2). При росте числа активных пользователей оно возрастает, но не столько существенно, чтобы говорить о существенном замедлении работы операторов. Тем более, что данный показатель не соотносится напрямую с объемом информации, обработанной одним тестовым пользователем в единицу времени, а показывает только среднее время, затраченное на запись и проведение каждого документа, без учета пауз между вводом документов. (Тем не менее, разработчикам "1С" было бы полезно вам подумать о возможности применения асинхронного режима при массовом, потоковом вводе данных, чтобы во время обработки документа, можно было бы начинать ввод следующего.) Увеличение времени обработки объясняется блокировками при параллельной работе с конкурентными наборами данных, увеличением нагрузки на все программные и аппаратные компоненты системы, а так же ростом накладных расходов, связанных с обслуживанием большего количества пользователей. Тем не менее, время обработки документа ни в одном тесте не превысило 10 секунд. Важно также подчеркнуть, что во время тестирования на конкурентных наборах данных не наблюдалось конфликтов взаимной блокировки (deadlock).

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

Рис. 8. Количество строк, обработанных за час системой "1С:УПП"

Рис. 9. Среднее время записи и проведения одного документа

В начало статьи

ВРЕЗКА 2. Приглядитесь к PostgreSQL

Несмотря на то, что позиции тройки лидеров на рынке СУБД -- Oracle, IBM и Microsoft – кажутся совершенно непоколебимыми, на самом деле они все в большей степени ощущают давление со стороны конкурентов из стана Open Source, прежде всего в лице MySQL (www.mysql.com) и PostqreSQL (www.postqre.com). Вот самый характерный признак этого: все три ИТ-гиганта предлагают сегодня в том или ином виде бесплатные варианты своих БД (издания типа Express)– это было даже невозможно себе представить еще несколько лет назад!

Оба проекта – MySQL и PostgreSQL – развиваются и поддерживаются независимыми фондами (сообществами разработчиков ПО) на принципах Open Source. Первый из них довольно хорошо известен в России, а вот о втором пока знают немногие. Но к PostgreSQL стоит присмотреться повнимательнее, тем более, что именно эту СУБД решила использовать фирма "1С" в новой версии платформы "1С:Предприятие 8.1" в качестве бесплатной альтернативы MS SQL Server. Вот что можно сказать в пользу этого "новичка" на российском ИТ-рынке.

Ранее PostgreSQL была ориентирована на операционных систем Unix, но потом в ней появилась и поддержка Novell NetWare и OS/2. Последняя версия PostgreSQL 8.0 может работать почти со всеми ведущими OC, в том числе и с Windows. Еще можно установить на рабочую станцию или ноутбук с помощью мастера инсталляции также просто как, например, Microsoft Word.

Многих пользователей коммерческих СУБД смущает тот факт, что бесплатные системы не имеют профессиональных инструментов разработки и администрирования. Эти представления явно устарели. Конечно, PostgreSQL, как и многие другие Unix-продукты, всегда имела развитую систему управления в режиме командной строки. Но сейчас в дополнение к ней можно применять и набор графических средств для управления и проектирования БД, в том числе Visual Case, Data Architect, pgAdmin III и Navicat PostgreSQL. Для управления отчетами имеется возможность подключения Crystal Reports, Cognos ReportNet, а также некоторых инструментов Open Source, в частности, JasperReports. Программный интерфейс PostgreSQL поддерживает работу с широким кругом языков программирования: C++, C#, JDBC, Perl, PHP, Python, Ruby и Tcl. Можно применять также такие редкие сегодня языки как Ada, Common.Lips и Pascal.

Многие предубеждения против средств Open Source связаны с их технической поддержкой. Если эти продукты бесплатные, то кто же будет отвечать на вопросы пользователей? На самом деле документация по PostgreSQL включает почти 1450 страниц в формате PDF или в онлайновом варианте. Там содержатся ответы почти на все вопросы клиентов. Если же вам нужно обсудить какие-то специальные темы, то можно обратиться на онлайновые новостные форумы, поддерживаемые Google. Есть также возможность применения средств IRC для обсуждения проблем в режиме реального времени. Для те же, кому нужно гарантированная поддержка могут обратиться к платным услугам, предлагаемым рядом компаний, например, Pervasive Software или SpikeSource.

PostgreSQL полностью соответствует стандартам SQL и даже поддерживает некоторые его расширения. Например, при работе с приложениями, ориентированными на Oracle, можно использовать EnterpriseDB (версия PostgreSQL), которая дополненная различными функциями, специфичными для Oracle. И все это – бесплатно!

В начало статьи