back to the
main page
Greener, Meaner, Leaner SOA on an Application Grid
A successful service-oriented architecture (SOA) project tends to increase traffic to back-end systems, sometimes to the breaking point. But SOA running on an application grid powered by Oracle Fusion Middleware can provide a sustainable solution that increases both throughput and resiliency while actually decreasing demand on back-end systems.
"SOA is essentially a green technology, encouraging reuse of existing computing capabilities," says Mohamad Afshar, vice president of product management, Oracle Fusion Middleware development.
However, SOA can also suffer from unanticipated spikes in demand for back-end resources as services are bombarded by a range of internal and external sources.
"SOA, as configured today, has no memory of its own, so back-end systems receive the same question 50 or 100 times only to produce exactly the same answer over and over again," explains Afshar.
“In a world of monolithic applications, you could get a rapid handle on performance," adds Dave Chappell, Oracle vice president and Chief technologist for SOA.
"But in an SOA world, when your application is made of service components that are sourced separately, the game changes," says Chappell. "You have to consider the performance hit that occurs as you push data across boundaries from one service to another."
Predictable Latency Under Increased Sustained Loads
The solution, according to Chappell, lies in running SOA on an application grid. In particular, in-memory data grid technology such as Oracle Coherence turbocharges the SOA tier itself by caching results of service calls.
"In this way, you bring shared memory into the SOA architecture," says Chappell.
Such a solution not only reduces traffic to back-end systems, but also enables execution of stateful business logic against a data grid.
SOA on application grid balances the in-memory storage of a service instance to other machines across the grid, providing what is essentially a distributed, shared memory pool that can be linearly scaled across a heterogeneous grid of machines.
With Oracle Coherence, all the data objects in the grid are automatically available to and accessible by all other applications and services on the grid. Just as important, none of these data objects is lost in the event of a server failure, because multiple copies of each piece of data are kept in the grid.
"Many would shy away from stateful business logic in SOA environments," Chappell says. “However, object-oriented programmers are used to encapsulating business logic with data. By building stateful services on a data grid architecture, they can still do this while also making their applications scalable.”
Measurable Benefits
According to Chappell and Afshar, the benefits of running SOA on application grid include:
- Improved response times for front-end users
- Reduced hardware requirements
- Improved fault tolerance without sacrificing performance
- Predictable latency under increased sustained loads
- Overall increase in performance and throughput
"Given these advantages, it's clear that application grid, and data grid in particular, should be part of any SOA architecture in which response times are critical," concludes Chappell.
More Information
back to the top
|