They're two of today's hottest technologies, and for good reason. Server virtualization provides cost savings on top of flexibility, while a service-oriented architecture affords application reuse and fast response to business needs. But the benefits of combining them can be less obvious.
SOA helps with virtualization by breaking applications into smaller chunks that are more easily spread across multiple servers or CPUs, even off-loaded to outside service providers. Through common runtimes like Java and XML standards, SOA shields APIs from the underlying hardware or operating system. In return, virtualization simplifies SOA by easing provisioning of new hardware resources.
They're the ultimate power couple. Too bad so many obstacles stand in the way of togetherness. Virtualization management apps have communication issues when it comes to SOA, while their Web services equivalents aren't good at setting boundaries for virtual machines. But just because we have a way to go before this marriage of agility is a done deal doesn't mean organizations investing in SOA, virtualization, or both shouldn't anticipate the matchup when making buying decisions. Big application vendors, including BEA Systems, IBM, Microsoft, Red Hat, and Sun Microsystems, have SOA/virtualization synergy on their minds, and so should you.