With the addition of loose coupling to Web services, service-oriented architecture (SOA) has become a reality. Simultaneously, Grid computing has come to life, enabling application, hardware and data-store virtualization.
As the requirements for SOA continue to match the natural strengths of Grid computing, the two models are headed for a de facto merger.
There are many definitions of SOA in the marketplace, but all share common underpinnings. Key concepts include loosely coupled services (with simple APIs and messaging formats), abstraction, virtualization, modularity and an underlying service management infrastructure.
In its simplest form, SOA involves exposing reusable software modules as Web services, which are combined in a loosely coupled fashion to create composite business applications. However, for this vision of SOA to yield business value, more is required in the way of enabling infrastructure. A successful SOA deployment satisfies the following requirements:
- Delivers IT as a service: IT provisioning should evolve from a cost-center model to that of a variable-cost utility, that can be evaluated against service-level agreements (SLAs) and key-performance indicators (KPIs).
- Delivers service as needed, when needed: The goal for a SOA is to be application centric and demand driven. Application service requests are assigned to the most appropriate resources in the virtualized resource pool, based on the organization's required SLAs, cost structure, policies and priorities.
- Enhances critical business systems: A true SOA optimizes the performance, reliability and total cost of ownership (TCO) of the IT infrastructure. Key attributes include flexibility, resilience, scalability, efficiency, utilization, security, accounting and billing, support and SLA compliance.
- Simplifies service delivery and consumption: Substituting console-level parameters for coding, a unified administrative dashboard simplifies monitoring and control of service configuration and execution.
- Minimizes service programming and deployment complexity: Underlying infrastructure takes active responsibility for managing quality of service (QoS) and enforcing service access and execution policies.
- Maintains service interactions based on industry standards: Service APIs and messaging formats are simple, universal and easily extensible (e.g., WSDL, SOAP, XML and BPEL).
- Virtualizes the application, hardware resource and data layers: Services can be simple, modular, efficient and reusable to the extent that an underlying application execution environment abstracts the various distributed resource layers and automatically manages allocation.
The Optimal Grid Infrastructure
IT architectures of simple and reusable software agents (i.e. services), and are provisioned dynamically to satisfy potentially unpredictable application consumption, requires a solid foundation — a comprehensive service application platform.
Aligned with SOA objectives, a Grid infrastructure can address this need by serving as a virtual application fabric and service execution platform focused on application, hardware and data virtualization.
As the virtualization fabric (Figure 1), any abstraction not accomplished by the Grid layer must be programmed into individual services and their business application consumers. Abstracting service consumption and the service execution environment removes these considerations from the realm of programming to that of console-level configuration settings.
Figure 1: Service-oriented architecture with a Grid layer as the virtualization fabric.
To serve effectively in an SOA, a fully functional “service” must include a managed execution environment, monitor and alert functions, SLA tracking, accounting capabilities, easy-to-use interfaces, messaging exchange protocols and dynamic provisioning behavior — all enabled by the Grid layer in its capacity as a service platform (Figure 2).
Figure 2: Grid layer as a service platform.
Accelerating the Shift to SOA with Grid
By distributing application workload across shared system and data resources, the service execution platform inherent in an effective Grid infrastructure drives new levels of business performance.
This virtualized infrastructure allows applications to non-invasively leverage heterogeneous resources across the enterprise. It also manages the execution of services as required to meet the service levels and cost structures of the business.
The result is a service fabric that can dramatically accelerate an organization's shift toward SOA. Eight of the key benefits that enterprises can achieve by deploying an effective Grid infrastructure to support their SOA strategies are:
- Application performance: Some Grid users have documented 25 to 50 times improvement in application performance speed, measured by response time and throughput benchmarks.
- Resilience and reliability: With guaranteed task execution and mechanisms to ensure recovery and migration in the event of system error, application failure rates can drop by up to 90 percent or more.
- Flexibility and API independence: Forming an application execution environment, the Grid layer supports a wide variety of clients that can be quickly virtualized, including Java, .NET, SOAP, C++ and binary executables.
- Service-oriented control: Grid enables the global management of services, and administrative control of operational parameters, including policy-driven service, resource assignment and workload distribution rules.
- Dynamic provisioning: With a dynamic, adaptive load balancing approach, resources can be added or removed without impact to running services. In contrast to other tools, a Grid layer optimizes utilization by dynamically provisioning these actions within milliseconds vs. minutes or hours.
- Rapid development and deployment: Providing a standards-based, flexible and intuitive programming model, the Grid layer can simplify development and streamline deployment.
- Usage-based accounting: With centralized administration tools, the Grid infrastructure can help IT managers establish variable cost, “pay as you go” charge back systems and measure service level agreement compliance.
- TCO reduction: With all of these benefits together — performance, utilization, reliability, flexibility, service-oriented control, dynamic provisioning, rapid development and deployment, and centralized accounting — Grid can yield a more efficient, cost-effective enterprise.
Today's global corporations are staggering under the burden of complex and costly IT infrastructure that is often unable to respond to the demands of the business. When faced with the need to increase scale, improve application performance and improve QoS, corporate environments are exploring Grid computing and application virtualization as proven and cost-effective technology strategies.
The SOA and Grid computing models are highly complementary. In a combined SOA and Grid approach, applications are deployed as loosely coupled Web services to be consumed and reused by different users and applications with Grid management tools.
In its capacity as a service platform, an ideal Grid-computing infrastructure virtualizes the service execution environment, manages every aspect of service execution automatically and virtualizes system and data-level resources. These system and data resources appear to the application layer as aggregated, shared pools, which are dynamically assigned to satisfy application demand.
In the service-execution layer, the Grid brokers business application service requests, reconciling application demand parameters with resource supply considerations at runtime, using built-in dynamic provisioning and adaptive load balancing mechanisms. The result is an optimal execution environment, or service platform, for Web services and business logic.
Whether or not the supported business applications are inherently service-oriented, Grid infrastructure software promotes migration to lower-cost commodity architectures, which deliver exponential scale and price/performance gains. At the same time, irrespective of IT migration plans, such software wrings optimal performance and utilization numbers from existing resources. The TCO benefits derived from these two factors are enormous.
About Kelly Vizzini
As chief marketing officer at DataSynapse, Kelly Vizzini works to leverage the company's existing successes and domain expertise to build a brand identity that positions DataSynapse as the de facto standard in the U.S. and European markets for distributed computing solutions. Prior to her role at DataSynapse, Vizzini held marketing positions at several software companies including Prescient, Optum, Metasys and InfoSystems. She holds a bachelor's degree in journalism and communications from the University of South Carolina.