Mule 2.1 Enterprise and Mule Galaxy 1.5 Enterprise Released
Mule 2.1 Enteprise
Mule 2.1 Enterprise, is an enterprise edition of a popular open source enterprise service bus (ESB). According to the press release, the exclusive features of the enterprise edition of Mule 2.1 enterprise includes
- Premium connectors –built for high performance and with enterprise-only features, fully certified and supported by MuleSource
- Mule RESTpack – now supported as part of the core Mule 2.1 Enterprise product, allows developers to create REST-style services, which form the basis for web oriented architecture (WOA), using popular frameworks such as RESTlet and Jersey
- Out-of-the-box retry policies – allows creation of self-healing connections, instructing Mule to attempt reconnection based on pre-defined policies, without the need for custom code
In a Q&A with Ross Mason, CTO and co-founder of Mulesource Inc, elaborated on the RESTpack feature-set
Mule adds a number of options for helping you build and consume RESTful services. It adds support for the new JAX-RS (JSR-311) standard which allows you to build RESTful services by annotating your classes. It adds support for the Restlet project which is a lightweight and powerful library for consuming and building services. Each of these support a large number of serialization formats from XML to JSON to HTML to binary types. There is also support for Atom feeds and the Atom Publishing Protocol via a new Apache Abdera connector
...and also on policy based "self-healing connections"
These policies enable self-healing connections to external resources, such as to a Database or JMS server. Retry policies can attempt to connector to the resource repeatedly over a time period, trigger escalations and fire off notifications.
Ross Mason explained that the product supports interoperability with other platforms and technologies for e.g. .net via its various connectivity options
- REST or Web Services (WS-Addressing, WS-Security, WS-Policy)
- AMQ Message broker such as Apache QPid
- Custom TCP protocols
... adding that "It is possible to deploy services in the Mule container written in Python and Ruby."
We asked about the support for federation/ identity solutions and what are the authentication/authorization mechanism supported by the enterprise version? for which he responded
Mule supports endpoint authentication and service level authorisation. Users and groups can be accessed through LDAP and DB. Mule also supports WS-Security, SAML 1.0 and CAS for central authentication.
Finally he added that there are also improvements in developer experience
Mule 2 has better support for IDEs such as Eclipse and IDEA since the configuration uses modular schemas that enable auto-complete, validation and context help.
Mule Galaxy 1.5
Mule Galaxy 1.5, is the latest major release of the MuleSource's open source SOA governance platform with integrated registry/repository. The new features available in the release include
- Scripting shell –allows Galaxy power users to write custom extensions to Galaxy
- Event API –important changes to services or artifacts inside Galaxy trigger an internal event, which can result in actions such as sending notifications or applying remote policies
- Feeds for search results – subscribe to any search via an Atom feed and monitor changes via any newsreader
- Typed properties – store properties as strings, lists, users, lifecycles, or even links between artifacts
- Service metadata storage – store metadata to describe any type of service (RESTful, TCP, JMS, and others)
- Improved Atom API – enhanced functionality to do even more operations on services and artifacts
- Improved Galaxy Query Language – supporting more sophisticated queries
- Auto Upgrade – simplifies upgrading from previous versions of Galaxy
In a Q&A with Dan Diephouse, Software Architect behind Mule Galaxy; we asked him to elaborate on the governance features available in the product and what the product roadmap was, to which he replied,
Galaxy is currently more design time oriented, but it does include some runtime features. There is support for loading WS-Policy documents and applying those policies to web services. Also, 1.5 includes the ability to store information about services at runtime through metadata entries in the registry. Via the Atom API you can easily update information about the current status of the service and where to access it.
We haven't released our roadmap yet, but runtime features are an important part of our future plans.
When asked how this offering compared to other commercial offerings he said,
Galaxy is a more lightweight offering and is an open source project. We integrate well with other open source products. Users are free to extend and modify Galaxy. Combined with our Atom API it makes integration much simpler than going down the UDDI route for instance.
Since some of the products features also cross into the service management space, we asked if the product offers any templates/best practices vis-a-vis ITIL, He denied that they currently have any as part of the release but added that "There maybe scope for defining a set of policies that confirm ITIL best practices"
We asked about how the discovery and publishing of services are enforced using policies; He explained
Lifecycle transitions and unloads can have policies enforced so that nothing gets into the Registry that doesn't comply or doesn't progress to the next lifecycle phase. Both Lifecycles and policies are customisable
We asked him whether one needs to get Mule Enterprise to effectively use the Galaxy product? and how the product plays with other ESB's. He clarified
Galaxy is a standalone product which does not require the use of Mule at all. We have users who have written integration for their own in-house ESBs and we support a number of other open source projects like Apache CXF.
However, for Mule users, there is deep integration between the two for customers that choose to use both. Specifically, there is a feature called Mule NetBoot that enables sophisticated application deployment management. With NetBoot, Mule users can store Mule configurations centrally in the Galaxy repository. A NetBoot agent sits on a remote server and downloads the centrally managed configuration, booting up the local instance of Mule using that configuration. This allows administrators to ensure that every Mule instance is up to date and with the correct configuration. This is particularly useful for our customers who have many instances of Mule running in remote locations (for example, one of our customers has 13,000 instances of Mule in all of its retail locations throughout the US)
He concluded saying
[...] hundreds of community members who have downloaded and installed Galaxy since its release a few months ago, many who give us ongoing feedback on the product. We are working on customer case studies and should have some later this year.
Be sure to check out the press releases for details on the products at Mulesource.