Flexibility is the hallmark of a service-oriented architecture, in which reusable application components can be shared across an enterprise and assembled in a loosely coupled way. In the data center, however, SOA technology's flexibility translates into unpredictability - a trait that is incompatible with traditional infrastructure technologies.
What if a particular Web service's workload skyrockets because two, five or 10 heavily used applications suddenly start calling the service? Meeting that demand requires being able to allocate computing resources on the fly. "You better have the capacity to support that one service and have planned for that scaling from an infrastructure perspective -- hardware, software, network, bandwidth and storage," says Donna Scott, an analyst at Gartner.
Reallocating resources dynamically as an application's workload increases is easier said than done, however. "You can't just pretend that it's going to happen. There's nothing that's going to happen automatically in the back end just because an SOA service calls an SOA server," Scott says. "You have to have planned and built that infrastructure to enable it to scale up and down."
Tools that monitor conditions and make adjustments automatically -- or with minimal human intervention -- are critical. Some foundational technologies are server provisioning and configuration management, as well as run-book automation. Server virtualization, which lets one computer run multiple operating systems, also plays a role.
Technologies such as these comprise what some call a real-time enterprise (RTE). In an RTE, the run-time environment is optimized dynamically so it can be scaled and tuned to meet fluctuating demand, Scott says. "You're mapping the demand for IT services with the supply of resources," he says.
Service-oriented infrastructure (SOI) is another name for it. SOI is the basis for greater IT automation, says the Open Group, an open standards consortium working to define a reference framework and maturity model for SOI. With SOI, companies can move from dedicating infrastructure resources for each application to allocating resources dynamically using virtual processing, storage and network resources.
"SOA and SOI can exist on their own, but when you marry them, you see the big-bang achievement," says Hemesh Yadav, who is lead architect in Wachovia's retail technology architecture team and co-chair of Open Group's SOA-SOI project, established in July.
Whether called RTE or SOI, the concept appeals to most enterprises. Turning that concept into reality takes finesse, however.
For starters, quantifying the infrastructure requirements of application services isn't easy, says Rich Colton, application integration manager at engineering and construction firm Washington Group International in Boise, Idaho. "When you start a process in an SOA, you could be using multiple resources, which means multiple servers, multiple databases and even multiple applications on different servers. The problem is, how do you know how long those individual processes are taking so that you can determine metrics as the load increases?" he asks.
The tools needed to monitor the elements of an SOA process, and the resources each requires, are just beginning to mature, Colton says. While traditional tools give you an idea of load by looking at a server's CPU and memory use, SOA requires in-depth tools that provide intelligence down to the service-component level. "You have to make sure your tools can help you determine where you're using your resources," he says. "Until you can isolate where those activities are going on, it's like a crapshoot. You don't know where you should concentrate first."
Gartner's Scott agrees. Enterprises are moving toward greater automation in the data center, but it's still the early days: "Most of the traditional management technologies, [such as] for monitoring and configuration management, must become more active in order to manage the SOA environment," she says.
In addition, enterprises are going to have to take automation to the next level. For example, virtualization is an important technology, but it requires additional tools to achieve the agility required of RTE or SOI. Lack of automation is a killer when managing virtual servers, says the Open Group's Yadav, who spent a decade with another Fortune 100 financial institution before joining Wachovia. At that company, manually reallocating resources from one logical partition in a virtualized environment to another took server teams 48 hours, he says. "You can easily create a virtual partition, but there needs to be a mechanism to monitor and then scale the infrastructure based on the demand."