Ольга Твердова
Progress v9: Новые технологии и стоимость владения
Включив в свой состав более 50 усовершенствований, 9-я версия Progress - это существенно обновленная версия, предлагающая дальнейшее развитие технологий Progress и WebSpeed, известных своими функциональными возможностями и надежностью. 9-я версия Progress перенесла в компоненто-ориентированную разработку на 4GL новую гибкость и доступность, что существенно улучшило производительность и возможности существующих приложений Progress и WebSpeed.
9-я версия Progress - новый шаг в направлении UAA
Интегрировав и расширив Progress 4GL, WebSpeed, и линию продуктов баз данных, 9-я версия Progress предлагает единое решение для разработки и внедрения всеобъемлющих, критически-важных, распределенных приложений с обработкой транзакций в режиме on-line (OLTP), отвечающих требованиям приложений следующего поколения в отношении открытости и возможностей. Предоставляя модульность на основе компонентов, перенос производительности и обслуживания на сервер, высокую масштабируемость, а также взаимодействие на основе множества стандартов, 9-я версия Progress - это большой шаг вперед в направлении к Universal Application Architecture (UAA) фирмы Progress Software Corporation, позволяющий создавать и внедрять приложения "Future Proof". Клиенты могут или полностью заказать интегрированный набор продуктов, или заказать только модули, необходимы для работы на определенных платформах и с определенными интерфейсами.
Новое в Progress v9:
9-я версия Progress - имеет архитектуру, отличную от 8-й версии и ее предшественников. Ядро 9-й версии составляют три компонента:
Progress RDBMS Version 9, которую отличают:
- Поддержка более 10000 пользователей одновременно и возможность хранения многотерабайтных объемов данных
- Мощные средства реализации SQL-92, ODBC и JDBC, и встроенная JVM
- Прозрачный доступ к базам данных всех ведущих производителей
Progress ProVision Plus Version 9, предлагающая:
- Более мощный, предназначенный для работы в Web, компоненто-ориентированный инструментарий, основанный на объединенных ProVision 9 и WebSpeed Workshop 3, для более эффективного создания и тестирования двух- и много-уровневых приложений.
- Progress 4GL and Progress ADM 2.0 (Application Development Methodology)
- Новые команды и параметры, обеспечивающие более высокие производительность и гибкость, повышение многократности использования и более легкое программирование на основе стандартов, обеспечивающее соответствие концепции "Future Proof".
Progress Open AppServer, для которого характерно:
- Новая stateless серверная технология для масштабируемости приложения
- Интерфейс Open Client для AppServer, позволяющий приложениям Java или ActiveX получать доступ к бизнес-логике на основе 4GL.
- Встроенный NameServer для балансировки загрузки и возможности обработки отказов.
Основные особенности продукта
Созданный в соответствии с реальными потребностями заказчиков для разработке многоуровневых приложений, 9-я версия Progress - это обширный набор технологий из Progress Version 8.3 и WebSpeed Version 2.1, слитых воедино для создания открытой платформы для продуктивной разработки и гибкого внедрения бизнес-приложений, отвечающих концепции "Future Proof".
9-я версия Progress имеет следующие особенности и возможности:
- Новые особенности базы данных обеспечивают улучшенную масштабируемость, новый многопоточный обработчик SQL с поддержкой ODBC и JDBC, и графические средства администрирования на основе Java;.
- Модульность для разработки приложений на основе компонентов. Отделение бизнес-логики от других компонентов приложения является основой для высокой производительности и эффективного взаимодействия с другими приложениями или утсройствами.
- Перенос обработки на сервер обеспечивает максимум производительности при минимуме ресурсов и удобство сопровождения. Бизнес-логику легко сопровождать, ее безопасность защищена, и ее производительность максимальна при внедрении на быстрых серверах.
- Поддержка SQLна основе стандартов предлагает новый уровень открытости на уровне баз данных.
- Stateless-технология сервера для существенного увеличения масштабируемости приложений.
Progress RDBMS Version 9
СУБД 9-й версии Progress предлагает улучшенную масштабируемость, существенно расширенные возможности SQL, графические средства администрирования на основе Java - все это по ценам, одним из самых привлекательных в на рынке информационных систем.
Обеспечивая поддержку работы более 10000 пользователей одновременно и возможность хранения многих терабайтов данных, база данных предназначена для промышленных OLTP- и ITP-приложений большого объема. Ее отличают мощные средства реализации SQL-92, ODBC и JDBC для упрощения доступа пользователей и встроенная Java Virtual Machine (JVM) для поддержки хранимых процедур и триггеров Java. Java приложения могут теперь поддерживаться с клиентского места, из Progress AppServer и из базы данных.
Улучшенная поддержка SQL
В отличие от предыдущих реализаций SQL, в 9-я версии многопоточный обработчик SQL запускается непосредственно в месте хранения базы данных и не использует среду запуска 4GL. Благодаря этому обеспечиваются следующие возможности:
- Выполнение запросов средствами сервера
- Оптимизация на основе анализа ресурсоемкости
- Хранение и выполнение триггеров и хранимых процедур на сервере
Новый обработчик SQL использует для хранимых процедур и триггеров в качестве собственного языка язык Java, что позволяет отказаться от нестандартных расширений SQL.
Новый обработчик SQL лучше поддерживает стандарты соединения с базами данных ODBC и JDBC.
Новые средства администрирования
Для того, чтобы соответствовать будущему развитию клиентских платформ, Progress разработал новые графические средства управления для администрирования серверных технологий в 9-й версии, в том числе базу данных, DataServers, и Open AppServer. Они используют привычные древовидные структуры управления для удобного перемещения по сложным конфигурациям. Традиционные средства командной строки также были обновлены в 9-й версии.
Низкая стоимость владения
Несмотря на усовершенствования, сделанные для улучшения масштабируемости, открытости, модульности и управления, СУРБД Progress 9-й версии сохраняет низкую стоимость владения. Многие приложения требуют всего лишь около трети ресурсов, необходимых для аналогичных приложений на основе баз данных других поставщиков. В результате приложение на основе Progress требует меньшего числа дорогостоящих процессоров, жестких дисков и памяти. По результатам исследований аналитичской компании Aberdeen Group, стоимость владения и эксплуатации системы на Progress является наименьшей среди промышленных СУБД. (Полный отчет можно посмотреть здесь http://www.progress.com/services/pressrm/aberdeen2.htm). С начала 1999 года начал действовать новый прайс-лист, в котором значительно снижены цены на некоторые продукты, например на Workgroup DB Server. Низкая стоимость и легкость администрирования определяют также первенстово Progress на рынке упакованных в приложения СУБД.
Progress WebSpeed Version 3
Предлагаемый теперь и как отдельный продукт, и как компонент Progress ADE, Progress WebSpeed Version 3 - это быстрый и легкий путь переноса существующих приложений в Web, а также средство для быстрого создания ITP-приложений, обеспечивающих наивысший уровень соединений с базой данных и управления транзакциями.
WebSpeed Workshop Version 3 - это мощное и производительное средство разработки, вобравшее в себя средства и технологии, имеющиеся сегодня в Progress ADE, по-прежнему поддерживающее особенности средств быстрой разработки Internet-приложений предыдущих выпусков. WebSpeed поддерживает последние внедренные Internet-стандарты, в том числе Dynamic HTML, JavaScript, и недавно реализованные браузеры и Web-серверы. WebSpeed Transaction Server Version 3 обеспечивает повышенные доступность и надежность системы, улучшенное администрирование и повышенные производительность и безопасность.
Технология WebSpeed - объединенная с технологией ProVision в Progress Version 9 - составляет основу единого инструментария ADE 9-й версии.
Progress Version 9 - основные компоненты
Progress Application Development Environment (ADE) Version 9
Привычные методы построения двухуровневых приложений по схеме клиент/сервер зачастую уже не могут соответствовать сегодняшним требованиям более быстрых и более масштабируемых решений с доступом к Internet. Быстрое создание и внедрение универсальных приложений и изменение архитектуры существующих приложений, требуют полного, высокоэффективного, интегрированного инструментария для оптимизации производительности и поддержки концепции "Future Proof" при построении приложений.
Существенные усовершенствования, сделанные в среде разработки 9-й версии, позволяют разработчикам 4GL создавать быстро и эффективно открытые распределенные приложения следующего поколения.
Version 9 AppBuilder (ранее - User Interface Builder) усовершенствован для поддержки более эффективного построения и тестирования многоуровневых приложений. Отныне AppBuilder имеется и в ProVision, и в WebSpeed Workshop, поэтому оба продукта выглядят для пользователей одинаково. 9-я версия, таким образом, предоставляет все возможности и компоненты привычных средств разработки 8-й версии, а также возможность создания многих типов приложений - символьных и графических, двухуровневых и многоуровневых, клиент/серверных или Internet-приложений - с помощью единого набора средств.
9-я версия ADE содержит много новых особенностей и усовершенствованных средств разработки. Отметим следующие:
- Единый набор средств разработки, основанный на слиянии ProVision 9.0 и WebSpeed Workshop 3.0
- Новые SmartObjects, поддерживающие открытые, распределяемые компоненты
- Новое средство Application Partitioning Pro*Tool
- Устнавливаемый по желанию Development Server для тестирования распределенных приложений
- 32-разрядный Report Builder и поддержка2000-го года
- Графическое средство Progress Explorer для определения и управления базами данных, AppServer и WebSpeed Transaction Server
- Open Client Toolkit для генерации proxies-кодов, позволяющих приложениям-клиентам Java или ActiveX вызывать Progress AppServer
- Progress Results
- Application Compiler
- Application Debugger
- Win32 Character Client
Application Development Methodology 2.0
ADM 2.0 - это компонентная методология для создания открытых, многоуровневых приложений и многократного использования бизнес-логики. Бизнес-объекты могут быть созданы с помощью текста на Progress 4GL и распределены - в клиент/серверной, хост/терминальной или многоуровневой среде - с использованием тех же самых бизнес-объектов. Средства и мастера помогают создать proxy-коды для бизнес-объектов 4GL и позволяют собственный доступ к приложениям на основе Java или ActiveX.
Для облегчения построения распределенных компонентов, ADM 2.0 вводит три новых SmartObjects:
- SmartDataObject (SDO)
Этот независящий от пользовательского интерфейса объект данных позволяет универсальным клиентам предоставлять данные для различных объектов пользовательского интерфейса, в том числе для написанных на 4GL, HTML, Java, и COM-совместимым языках. SDO осуществляет определение и управление запросами, управление транзакциями, контроль состояния, а также (по желанию) форматирование и проверку. SDO могут быть запущены на клиенте, на сервере, или распределены между клиентом и сервером.
- SmartDataViewer (SDV)
- SmartDataBrowser (SDB)
И SDV, и SDB, работают с SDO и являются представлениями для пользовательского интерфейса своих аналогов из версии 8 (SmartViewer and SmartBrowser).
Эти и другие нововведения, сделанные в Version 9 ADM 2.0 и в средствах разработки, предоставляют разработчикам свободу при переходе к концепции Future Proof. Разработчики могут создавать бизнес-объекты 4GL, тестировать их средствами Development Server, и запускать эти объекты без изменений на клиенте или средствами Progress AppServer или WebSpeed Transaction Server.
Progress Version 9 4GL
Progress 4GL, краеугольный камень в семействе продуктов Progress в течение многих лет, развивался и набирал силу с каждой версией Progress, объединяя множество технологий в рамках единой среды программирования. Усовершенствования, сделанные в 9-й версии, включают в себя такие особенности объекто-ориентированного стиля, как динамические запросы, перезагрузку процедур, и обновленную событийную модель. Множество дополнительных усовершенствований было сделано как для графической, так и для символьной разработки.
Обновленный синтаксис 4GL предлагает немедленные преимущества:
- Более легкое, более ясное и с большей степенью использования стандартов программирование
- Более высокая производительность и более легкая отладка
- Повышенная гибкость - поддержка разработки распределенных бизнес-объектов
Среди множества новых особенностей Progress Version 9 4GL ключевыми являются следующие:
Динамические запросы и новые объекты баз данных
Новые объекты баз данных QUERY, BUFFER, и BUFFER-FIELD могут теперь создаваться динамически, а не статически. То, что раньше осуществлялось исключительно во время компиляции со статическими объектами, возможно теперь и во время компиляции, и во время работы.
Настраиваемый браузер
Пользователи могут теперь изменять различные размеры браузера как программно, так и графически. Это позволяет легко изменять размеры и местоположение браузера во время разработки и во время работы.
Новая событийная модель (Publish/Subscribe)
События, произошедшие в одной процедуре, могут теперь сообщить другим заинтересованным процедурам, что событие имело место. После уведомления, эти процедуры могут запустить специфический фрагмент текста, написанный для данного события. Новая модель заменила существовавший ранее механизм DISPATCH/NOTIFY.
Перезагрузка процедур
Позволяет файлу Progress 4GL представлять функцию или внутреннюю процедуру в своем интерфейсе для внешнего окружения, даже если текст этой функции или процедуры находится в другом файле Progress 4GL. Использование подобных "надпроцедур" позволяет многим файлам Progress использовать одни и те же функции.
Progress OpenApp Server
Progress OpenApp Server 9-й версии расширяет существующие функциональные возможности AppServer и повышает масштабируемость:
- Технология сервера Stateless
- Очереди сообщений
- Доступ открытых клиентов
- Встроенный NameServer
Progress AppServer обеспечивает обе технологии сервера: и state-aware, и stateless. Сервер stateless позволяет процессу AppServer поддерживать более одного пользователя, в отличие от серверов state-aware, связывающих процесс сервера приложений с одним пользователем на все время существования соединения. Когда число пользователей приложения растет, технология stateless позволяет увеличить масштабируемость приложения; за счет того, что нужно меньше процессов AppServer для поддержки того же числа запросов для доступа к бизнес-логике, снижаются требования к аппаратному обеспечению AppServer. В то же время, очереди сообщений гарантируют, что все запросы будут обработаны в порядке поступления.
Встроенный NameServer обеспечивает эффективную передачу запросов приложений клиентов. Все приложения клиентов, запрашивающие соединение с AppServer, обращаются к NameServer, который направляет запросы соответствующим образом. Параметр Load Balancer, имеющийся для Progress AppServer, позволяет создание многих экземпляров AppServer, поддерживающих одну бизнес-функцию и балансировку загрузки этих экземпляров при помощи весовых коэффициентов. Параметр Load Balancer может также использоваться для дублирования экземпляров AppServer для обеспечения резерва, автоматически выполняющего запрос в случае выхода из строя первого экземпляра.
Быстрая работа сегодня, сохранение приложений завтра
Когда Вам необходимо перенести имеющееся клиент/серверное приложение в Web, или встроить пользовательский интерфейс Java or ActiveX, технология совместного использования Future Proof, имеющаяся в 9-й версии Progress, гарантирует, что Вам придется работать только с одним источником бизнес-логики и только с одной базой данных.
Независимо от того, специализируетесь Вы на клиент/серверных приложениях или Web-приложениях, работаете Вы на ActiveX, Java, или на 4GL; обслуживает Ваше приложение пять тысяч пользователей или пять, 9-я версия Progress обеспечит Вам сегодня быстрое создание и внедрение универсальных приложений - и архитектуру Future Proof для завтрашнего дня.
9-я версия - это не замена 8-й версии Progress, мы будем продолжать поддержку Progress Version 8.3 и WebSpeed Version 2.1 до 2002 года. Это гарантирует, что Вы можете продолжать использовать существующие у Вас приложения, используя 9-ю версию для разработки следующего поколения приложений Future Proof. WebSpeed 3 интегрирован в 9-ю версию Progress, но существует также и как отдельный продукт.
Поддерживаемые платформы:
Version 9.0A (доступна с декабря 1998):
HP-UX 10.20, HP-UX 11.0, IBM AIX (32-разрядная), IBM AS/400, RISC,
Sun Solaris SPARC (32-разрядная), Windows NT Intel (client/server),
Windows 32 Intel (client), Citrix MetaFrame
Version 9.0B (будет доступна весной 1999):
DG/UX Intel, Digital UNIX (64-разрядная), IBM AS/400 RISC, Sun Solaris Intel
Ольга Твердова
olya@csbi.ru
CSBI EE