Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП / ООП / ры_приложений_полная_книга.pdf
Скачиваний:
500
Добавлен:
18.02.2017
Размер:
7.08 Mб
Скачать

26

Проектирование размещаемых сервисов и сервисов в облаке

Обзор

Данная глава обращается к новым и активно развивающимся технологиям и подходам создания и использования сервисов и приложений, размещаемых удаленно. Такие сервисы и приложения доступны через Интернет и выполняются в среде, которую обычно называют облаком (cloud), отсюда широко используемый термин обработка данных в облаке (cloud computing). Поставщики решений для облака и поставщики услуг их размещения, как правило, обеспечивают готовые сервисные приложения с различными уровнями настраиваемости. В качестве альтернативы можно создать собственное приложение и разместить его либо в собственных системах, либо в облаке у провайдера услуг размещения.

Идея создания или использования сервисов и приложений, размещенных удаленно, все более привлекает и независимых поставщиков ПО (independent software vendors, ISV), и корпорации как способ сокращения затрат, повышения эффективности и расширения возможностей.

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

Обработка данных в облаке

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

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

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

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

(Enterprise Resource Planning, ERP) или Управление отношениями с клиентами (Customer Relationship Management, CRM). Каждый из упомянутых подходов обладает определенными преимуществами и недостатками.

Более того, некоторые размещаемые удаленно приложения являются самодостаточными и предназначаются для пользователей, взаимодействующих с приложением через реализованный специально для этого UI. Некоторые из этих приложений поддерживают сервисы, таким образом, они одновременно обеспечивают UI и предоставляют собственную функциональность через API (часто предоставляемый через такие стандартные протоколы, как REST или SOAP), т.е. могут быть интегрированы в другие приложения, которые, в свою очередь, могут размещаться либо локально, либо удаленно. Некоторые размещаемые удаленно сервисы специально создаются для обеспечения функциональности, интегрируемой в другие приложения, и вообще не предоставляют UI.

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

Бизнес-сервисы – это такие сервисы, как биржевые сводки и котировки акций, системы счетов и платежей, средства обмена данными, сервисы продаж и порталы бизнесинформации.

Соседние файлы в папке ООП