Читать книгу Cloud Computing Solutions - Группа авторов - Страница 80
3.2.1 Service-Oriented Architecture (SOA)
ОглавлениеCloud computing environment has basic characteristics like self-service provisioning, pay as-go, elasticity, and on-demand usage. The main concept behind the cloud architecture is its of modular framework-based approach which makes cloud so popular. A component-based and modular-based approach of cloud architecture enables the cloud characteristics. What lies under the cloud framework or cloud flexibility is the modular approach of service-oriented architecture (SOA). So, this subsection presents a basic overview of service-oriented architecture.
Jothy Rosenberg and Arthur Mateos have defined SOA as follows [10]:
“A flexible set of design principles used during the phases of systems development and integration. A deployed SOA-based architecture provides a loosely coupled suite of services that can be used in multiple business domains. SOA separates functions into distinct units, or services, which developers make accessible over a network (usually the internet) in order to allow users to combine and reuse them in the production of applications. These services, and their corresponding consumers, communicate with each other by passing data in a well-defined, shared format (usually XML), or by coordinating an activity between two or more services.”
Service-oriented architecture is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. Service is a mechanism to enable access to one or more capabilities, where the access is provided using a prescribed interface and is exercised consistent with constraints and policies as specified by the service description [11]. In a service-oriented architecture environment, end-users request an IT service (or an integrated collection of such services) at the desired functional, quality and capacity level, and receive it either at the time requested or at a specified later time. Service discovery, brokering, and reliability are important, and services are usually designed to interoperate, as are the composites made of services. In the service-oriented architecture approach, service-based solutions are the major vehicle for delivery of information and other IT-assisted functions at both individual and organizational levels, e.g., software applications, web-based services, personal and business computing.
Consider an example to understand the application of SOA and also get an idea of how SOA and cloud computing are combined to provide services to customers. Let’s take a corporate travel reservation system which requires the SOA approach and SaaS service. A corporate travel reservation system is required to fulfill requests for reservations with multiple airlines and hotels for corporate employees traveling on business trips. An approach for design of travel reservations solution for use by corporate business travelers based on service-oriented architecture, software as a service, and cloud computing paradigms can be taken as an example of cloud. Here a single copy of software can be made available to consumers on demand as a shared service accessible over remote network location and charged on subscription or pay-per-use basis. The term SaaS denotes application software provided in such a way [12].