Windows Server 2008 — новая серверная операционная система

Часть 5

Алексей Федоров

История сервера приложений

Сервер приложений в Windows Server 2008

Application Server Foundation

Windows Communication Foundation

Windows Workflow Foundation

Дополнительные сервисы

Web-сервер

Удаленный доступ к сервисам COM+

Windows Process Activation Service

Net.TCP Port Sharing

Распределенные транзакции

Microsoft Message Queue 4.0

Версии Windows Server 2008

 

Мы продолжаем наше знакомство с новой серверной операционной системой компании Microsoft — Windows Server 2008. Предыдущие части данного обзора были посвящены следующим темам:

  • основные понятия, связанные с серверной операционной системой, роли, которые может выполнять Windows Server 2008, а также система управления сервером Server Manager (см. КомпьютерПресс № 4’2007);
  • вариант установки Windows Server 2008 с минимальным набором функциональности — Server Core, транзакционная файловая система (TxF) и транзакционный реестр (см. КомпьютерПресс № 5’2007);
  • расширения, появившиеся на уровне ядра операционной системы, процессы и потоки, изменения в сетевом стеке, а также вопросы, связанные с порядком загрузки операционной системы (см. КомпьютерПресс № 6’2007);
  • технологии управления инфраструктурой и приложениями, выполняющимися на ее основе, — Windows Eventing 6.0, Windows Installer 4.0, Windows PowerShell, Microsoft Management Console 3.0 и Windows Task Scheduler 2.0 (см. КомпьютерПресс № 8’2007).

В этой части мы начнем рассмотрение Windows Server 2008 в роли сервера приложений — Application Server, — который представляет собой интегрированную среду для развертывания и выполнения серверных бизнес-приложений. Чаще всего такие приложения разрабатываются либо внутри организации для решения специфических бизнес-задач, либо приобретаются у независимых разработчиков программного обеспечения (Independent Software Vendor, ISV). Обычно подобные приложения используют одну или более следующих технологий, сервисов и компонентов: Internet Information Services (IIS), Microsoft .NET Framework, ASP .NET, COM+, Message Queuing, web-сервисы на основе Windows Communication Foundation (WCF).

История сервера приложений

История сервера приложений от Microsoft началась более 10 лет назад, в 1986 году, когда в рамках NT 4.0 Option Pack был выпущен продукт Microsoft Transaction Server 1.0 (кодовое название Viper). Он позволял развертывать COM-компоненты в контейнеры и задавать их различные транзакционные уровни. За время, прошедшее с момента выпуска Windows NT 4.0, сменилось несколько поколений подходов к созданию приложений — от архитектуры «клиент-сервер» до многозвенной архитектуры и федеративных систем (Federated Systems). Технологии, обеспечивавшие поддержку каждой такой архитектуры, тоже изменились — на смену объектно-ориентированному подходу (инкапсуляция, наследование и полиморфизм), популярному в 80-х годах, пришел компонентоориентированный, широко применявшийся в 90-х (независимость от местоположения, тесное связывание, метаданные в режиме выполнения), а в наше время появился сервис-ориентированный подход (использование сообщений, схемы, контракты, политики, межплатформенность). Соответствующим образом пополнялись компоненты сервера приложений — от Microsoft Transaction Server до COM+ и Enterprise Services, на смену которым пришли .NET Framework и Windows Communication Foundation.

Windows Server 2008 по-прежнему может выполнять роль сервера приложений как одну из ключевых и содержит ряд улучшений и изменений, которые мы рассмотрим далее.

Сервер приложений в Windows Server 2008

Основные изменения и улучшения сервера приложений Windows Server 2008 заключаются в упрощении установки и конфигурации роли (что, впрочем, относится ко всем ролям, поддерживаемым в Windows Server 2008). Новый мастер Add Roles Wizard, реализованный в Server Manager, позволяет выбрать сервисы и дополнительные функции, необходимые для обеспечения работоспособности бизнес-приложений; установка Application Server Foundation, сервера приложений с настройками по умолчанию, включает .NET Framework 3.0. Также для роли «сервер приложений» устанавливается web-сервер — Internet Information Services (IIS) 7.0 и доступны следующие сервисы: Windows Process Activation Service (WAS), позволяющий активировать сервисы Windows Communication Foundation (WCF) по протоколу HTTP, через TCP, Named Pipes и Message Queue, и Net.TCP Port Sharing, который дает возможность нескольким WCF-приложениям использовать один TCP-порт для получения сообщений. Помимо этого доступны такие сервисы, как COM+ Network Access для удаленного вызова приложений COM+, Distributed Transactions и MSMQ.

Application Server Foundation

Application Server Foundation — это группа технологий, устанавливаемых по умолчанию при выборе роли «сервер приложений». В основе Application Server Foundation лежит библиотека классов .NET Framework 3.0. В составе Windows Server 2008 поставляется библиотека классов .NET Framework 2.0 — она доступна для всех ролей. В .NET Framework 2.0 входит Common Language Runtime (CLR) — ядро выполнения кода, написанного на «управляемых» языках — C#, VB .NET и ряде других, которое обеспечивает безопасное выполнение кода, упрощенное развертывание и межъязыковое взаимодействие, — и обширная библиотека классов. Application Server Foundation добавляет к базовым функциям .NET Framework 2.0 ряд расширений, реализованных в .NET Framework 3.0. К таким расширениям относятся Windows Communication Foundation (WCF), Windows Workflow Foundation (WF) и Windows Presentation Foundation (WPF). Из этих трех ключевых компонентов .NET Framework 3.0 WCF и WF часто применяется как для серверных, так и для клиентских приложений, тогда как WPF в основном используется только на клиенте (в данном обзоре он не обсуждается — более подробно о Windows Presentation Foundation см. соответствующий раздел сайта MSDN по адресу: http://msdn2.microsoft.com/en-us/netframework/aa663326.aspx и раздел сайта netfx3 по адресу: http://wpf.netfx3.com/).

Windows Communication Foundation

Windows Communication Foundation (WCF) — это унифицированная программная модель для построения приложений, использующих web-сервисы для коммуникации (connected applications). Такие приложения создаются на основе архитектуры Service Oriented Architecture (SOA) и часто называются сервис-ориентированными приложениями. Разработчики могут использовать WCF для создания надежных, безопасных транзакционных web-сервисов, которые могут общаться с другими сервисами и приложениями, реализованными на различных платформах. Таким образом, появляется возможность создавать приложения, потребляющие сервисы, «составлять» приложения из сервисов, расширять функциональность существующих приложений и реализовывать механизмы интеграции между приложениями и сервисами. WCF поддерживает все современные технологии, используемые для создания распределенных приложений, — COM+ и .NET Enterprise Services, Message Queuing, .NET Remoting, ASP .NET Web Services и Web Services Enhancements (WSE).

Более подробно о Windows Communication Foundation см. соответствующий раздел сайта MSDN по адресу: http://msdn2. microsoft.com/en-us/netframework/aa663324 и раздел сайта netfx3 по адресу: http://wcf.netfx3.com/.

Windows Workflow Foundation

Windows Workflow Foundation (WF) — это программная модель и ядро выполнения приложений, использующих так называемые потоки работ (workflow). Поток работ представляет собой набор активностей, описывающих реальные бизнес-процессы. Потоки работ обычно создаются и отрабатываются графически с помощью соответствующих инструментов. В описании потоков работ обычно применяется модель, и включенные в нее отдельные элементы потока (активности) могут выполняться как программно, так и вручную. Простые потоки работ могут быть описаны и реализованы с помощью традиционных языков программирования, например как серия шагов и условий их выполнения. Более сложные, реалистичные workflow требуют соответствующих средств дизайна, разработки и выполнения. Таким образом, включенные в Windows Workflow Foundation графические средства создания моделей, библиотеки предопределенных активностей и средства выполнения потоков работ максимально упрощают реализацию сложных, комплексных сценариев, позволяющих управлять активностями как программно, так и вручную.

Можно выделить следующие ключевые сценарии использования Windows Workflow Foundation:

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

Более подробно о Windows Workflow Foundation см. соответствующий раздел сайта MSDN по адресу: http://msdn2.microsoft.com/en-us/netframework/aa663328 и раздел сайта netfx3 по адресу: http://wf.netfx3.com/.

Более подробно о .NET Framework 3.0 — см. .NET Framework Developer Center по адресу: http://msdn2.microsoft.com/en-us/netframework/default.aspx, а также специализированный сайт http://www.netfx3.com.

Дополнительные сервисы

Помимо Application Server Foundation можно добавить к серверу приложений ряд дополнительных сервисов, к которым относятся web-сервер, удаленный доступ к сервисам COM+, Windows Process Activation Service, Net.TCP Port Sharing и поддержка распределенных транзакций.

Web-сервер

Используя данную опцию, можно установить web-сервер — Internet Information Services 7.0. Это существенно переработанная версия web-сервера, обладающая повышенной производительностью, высокой безопасностью, управляемостью, надежностью, модульностью и масштабируемостью. К основным преимуществам использования Internet Information Services можно отнести возможность хостинга в рамках сервера приложений внутренних и внешних сайтов, web-сервисов и компонентов со статическим и динамическим наполнением, возможность выполнения приложений на ASP .NET с доступом к ним из web-браузера и поддержку выполнения web-сервисов, созданных как средствами Windows Communication Foundation, так и ASP .NET.

Дополнительную информацию о Internet Information Services можно получить на сайте, посвященном IIS 7.0 и расположенном по адресу: http://www.iis.net/.

Более подробно о новом web-сервере мы поговорим в следующей части нашего обзора.

Удаленный доступ к сервисам COM+

COM+ Network Access — это сервис, обеспечивающий удаленный вызов приложений, созданных с применением технологии COM+ и компонентов Enterprise Services. Такие приложения часто называют компонентами Enterprise Services. Данный сервис впервые появился в Windows 2000 Server и продолжает поддерживаться в Windows Server 2008. Приложения, создаваемые с применением новейших технологий, обычно используют WCF для поддержки удаленных вызовов, так как WCF обеспечивает межплатформенное взаимодействие.

Windows Process Activation Service

Данная опция добавляет сервис Windows Process Activation Service (WAS). С помощью WAS можно динамически запускать и останавливать приложения, которые применяют сообщения, получаемые из сети по HTTP, Message Queuing, TCP и Named Pipes. Динамический запуск и остановка приложений обеспечивают более эффективное использование ресурсов сервера. WAS — новинка, появившаяся в Windows Server 2008.

Net.TCP Port Sharing

Данная опция добавляет сервис, известный под названием Net.TCP Port Sharing Service, который является новым сервисом в Windows Server 2008. Он позволяет нескольким приложениям применять один TCP-порт для получения входящих сообщений по соответствующему протоколу. Данный сервис принимает запросы и автоматически перенаправляет их соответствующим сервисам в зависимости от адреса получателя. Например, сервис-ориентированные приложения, построенные на основе WCF, могут использовать один порт. Разделение портов между несколькими приложениями является частым требованием при применении межсетевых экранов (firewall), или при ограничениях на число одновременно открытых портов, или когда требуется одновременная работа нескольких экземпляров WCF-приложения. Совместное использование порта (мультиплексирование) работает только в том случае, когда WCF-приложения применяют протокол net.tcp для входящих коммуникаций.

Распределенные транзакции

Приложения, выполняющие обновления в различных базах данных или в других транзакционных ресурсах, должны поддерживать транзакции — все обновления либо успешно выполнены, либо отменены. Поддержка распределенных транзакций в Windows Server 2008 обеспечивает выполнение этого требования. Отметим, что распределенные транзакции впервые стали поддерживаться в Microsoft Windows NT Server 4.0

Microsoft Message Queue 4.0

В состав Windows Server 2008 также входит новая версия коммуникационной технологии на основе обмена сообщениями, распространяемыми через очереди, — Microsoft Message Queue 4.0. Среди новинок в данной версии отметим появление подочередей, возможность обработки «отравленных» сообщений (Poison Messages), а также удаленное получение сообщений в рамках транзакций.

Использование подочередей позволяет создавать логические разделы для физических очередей. С помощью подочередей возможна реализация следующих сценариев: группировка отдельных сообщений для их более эффективной обработки и возможность вынесения сообщений, которые не могут быть обработаны, в специально созданную для таких случаев подочередь. Более подробно о подочередях см. на сайте MSDN по адресу: http://msdn2.microsoft.com/en-us/library/ms711414.aspx.

Так называемые отравленные сообщения — это сообщения, число попыток обработки которых превысило заданный максимум. В MSMQ 4.0 появилась возможность переноса приложений из основной очереди в очередь, называемую retry queue. Это позволяет приложениям продолжить обработку сообщений из основной очереди и позднее вернуться к обработке «отравленного» сообщения. Более подробно о работе с «отравленными» сообщениями см. на сайте MSDN по адресу: http://msdn2.microsoft.com/en-us/library/ms703179.aspx.

Удаленное получение сообщений в рамках транзакций представляет собой транзакционное получение сообщения из удаленной очереди. В предыдущих версиях Message Queuing (MSMQ) такая возможность не поддерживалась, и Microsoft рекомендовала не использовать доступ к удаленным очередям вне транзакции. Более подробно о работе с удаленными очередями см. на сайте MSDN по адресу: http://msdn2.microsoft.com/en-us/library/ms700128.aspx.

Версии Windows Server 2008

Роль Application Server поддерживается во всех изданиях Windows Server 2008 — Windows Server 2008 Standard, Windows Server 2008 Enterprise, Windows Server 2008 Datacenter, Windows Server 2008 for Itanium-Based Systems, но недоступна в издании Windows Web Server 2008.

 

В начало В начало

КомпьютерПресс 9'2007

Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует