Skip to main content

Realizing SOA with service virtualization?

Gosh, since virtualization is a hot buzz word, we'll use it everywhere.

Service Virtualization as a Solution

At its most basic form, virtualization is an abstraction layer that decouples a resource consumer from the provider of those resources. Virtualized resources allow a single provider to support multiple consumers to achieve higher agility and reuse of those resources. In the virtual machine scenario, the physical hardware is abstracted from the operating system creating unique opportunities for design optimization.

Capable of supporting multiple running instances of different operating systems on the same machine, virtual machines deliver unparalleled utilization of extra processing cycles in the data center and developer workstations. Service virtualization realizes many of the professed SOA advantages by abstracting the true service address, binding, and contract necessary to invoke business functionality at a given endpoint. An abstraction layer is also a potential platform for additional behaviors.

Address virtualization abstracts the URI where the endpoint actually sits from service consumers and allows messages to be delivered per metadata to different endpoints. Coupled with content-based routing behavior, for example, address virtualization could be used to manage a service level agreement (SLA). For instance, a Web farm can be dedicated to silver customers and another more powerful and robust Web farm can be made available for gold customers. Consumers would appear to invoke the same endpoint, but in reality messages would be routed to the appropriate endpoint, thus ensuring an appropriate level of service that corresponds to the importance of the customer.

Binding virtualization abstracts the actual communication protocols supported by the endpoint to more easily allow providers to adopt newer Web service development stacks while still supporting existing service consumers. Contract virtualization abstracts WSDL and XSD definitions so services can be discovered. For example, a service may be dynamically comprised of operations from disparate services to form a single service that may serve as a better representation of a task or entity service. Such seemingly straightforward capabilities are extremely powerful and organizations may be willing to undergo major infrastructure upgrades to better support a virtualized service inventory.

Many vendors profess service virtualization as a capability of their intermediary, agents, or bus. Usually they limit the concept to contract virtualization and attribute address virtualization and binding virtualization as a feature of their product. It is important to understand that the concept exists independently from any specific implementation architecture. Certain architecture designs are supported by a stronger implementation and serve as a base for security, monitoring, and caching of value-added services. Service virtualization implemented over the service intermediary pattern ideally achieves these goals in a non-invasive manner and can be easily applied to existing production deployments. Moreover, the centralized nature of service intermediaries makes them an excellent platform for service repository and service registry capabilities.

To gain a real world perspective of this approach, let’s explore the case study example.


Link

Comments

Popular posts from this blog

Security: VMware Workstation 6 vulnerability

vulnerable software: VMware Workstation 6.0 for Windows, possible some other VMware products as well type of vulnerability: DoS, potential privilege escalation I found a vulnerability in VMware Workstation 6.0 which allows an unprivileged user in the host OS to crash the system and potentially run arbitrary code with kernel privileges. The issue is in the vmstor-60 driver, which is supposed to mount VMware images within the host OS. When sending the IOCTL code FsSetVoleInformation with subcode FsSetFileInformation with a large buffer and underreporting its size to at max 1024 bytes, it will underrun and potentially execute arbitrary code. Security focus

OS Virtualization comparison: Parallels' Virtuozzo vs the rest

Virtuozzo's main differentiators versus hypervisors center on overhead, virtualization flexibility, administration and cost. Virtuozzo requires significantly less overhead than hypervisor solutions, generally in the range of 1% to 5% compared with 7% to 25% for most hypervisors, leaving more of the system available to run user workloads. Customers can also virtualize a wider range of applications using Virtuozzo, including transactional databases, which often suffer from performance problems when used with hypervisors. On the administration side, customers need to manage, maintain and secure just a single OS instance, while the hypervisor model requires customers to manage many OS instances. Of course, the hypervisor vendors have worked hard to automate much of this process, but it still requires more effort to manage and maintain multiple operating systems than a single instance. Finally, OS virtualization with Virtuozzo has a lower list price than the leading hypervisor for comme...