link
Avalon
Merlin Runtime
Home PlanetProductsCentral
Merlin Runtime
Service Management Platform (SMP)

Merlin is a service management platform based on an advanced assembly engine. Its focus is to provide support for the encapsulation of a set of components and services within functional blocks. Blocks enable the separation of components as an implementation solutions from services established by respective components.

Assembly Framework

The assembly engine is responsible for the management of the deployment of services provided by a component.

Components in the framework may have dependencies on services provided by other components, which in turn may have dependencies of their own. In addition, components can declare (as part of their meta-info) particular lifecycle stages (such as initiation or configuration) and the type of stage provider it needs to handle that stage. So in effect, components can be deployed with classic runtime dependencies together with deployment dependencies (because deployment stage providers are themselves components that may have their own deployment and runtime dependencies).

Assembly services include ordered deployment and decommissioning, and a range of "lifestyle" handlers (things like thread-safe, per-thread, singleton, transient, or custom policies). The package includes facilities for: classloader management and cascading repositories for types, templates, service definitions and appliance instances (where an appliance is simply an instantiation of a particular component deployment scenario).

Meta Model

The meta model used in Merlin defines the notion of a component type. A Type definition contains information about deployment and runtime dependencies together with general attributes about the type and services the component type can provide. The Type and Service notions are complimented by a Profile which can be viewed as a template deployment scenario. Type, Service and Profile descriptions can be packaged in jars files and used as the basic for automating component assembly and deployment.