Introducing WSO2 Carbon, Part I
Firstly, Carbon isn't a "product". We already have a set of products, and we are launching new Carbon-based revisions of some of those:
- WSO2 Web Services Application Server v3.0
- WSO2 Enterprise Service Bus 2.0
- WSO2 Registry 2.0
Firstly, Carbon is based on the Eclipse Equinox OSGi container. Equinox is a great OSGi container and OSGi is providing some key capabilities: modularity, lifecycle and services. Effectively OSGi allows you to build much more componentized systems, where the components have versions, very clear interfaces, and you can support multiple components with the same purpose. Effectively, OSGi brings many of the desirable aims of SOA into the JVM.
If you've ever heard me talk about Web Services and SOA, you will have definitely heard me talk about how the standards were built to be composable. Like Lego blocks, if you need security, plug in the security standard. And when we built Apache Axis2 we built a model that supported that. But composability at the WS-Security and WS-ReliableMessaging level is very low level. So we fixed that. Carbon is a composable server architecture. Effectively our products are now sets of components running on the core framework, and you get to choose which ones you want and need. For example, if you want to add BPEL support to the ESB, simply download the BPS component and install into your existing ESB.
Why? What is good about a composable server architecture. Well, three things:
- You can choose the deployment to suit your architecture: if you need some transformation and Data Service together, you can put together the system that supports this, simply, logically and consistently. And consistency is important. When you configure security on a process, its exactly the same code, UI and model as configuring security on a service. (By the way, we wrote zero new code to secure processes.)
- You just use what you need: you don't end up with a monster ESB hub running 4Gb of code because that was what the vendor offered.
- The system can grow, and not just through WSO2's efforts: you can grab OSGi bundles from other places, or simply repackage existing tools.
Now, the composable server architecture isn't just something WSO2 is going on about - Spring dm Server offers a similar model for building webapps, and IBM is promising it will come in WAS.next. But we think we have done something unique. We've figured out how to make it work for SOA.
My
analogy is this: when you download Eclipse and start coding, you need
know nothing about OSGi. But when you go to the plugin manager and add
capabilities to your Eclipse tool, then OSGi becomes something really
useful. Why? Because you can add UML support into your existing
workplace and integrate it with your existing code. You can download
SVN support and start saving all your resources into SVN. This is more
than just OSGi - someone figured out what it meant to make a composable
tooling platform. And we have done the same for SOA. We've figured out how to make a composable SOA platform.
What
is a composable SOA platform? Its a platform where when you add new
types of service, you can instantly do many things: secure them, try
them out, configure logging, caching, throttling, statistics. Its a
platform where every piece of metadata and configuration is stored
consistently in a metadata Registry, with full versioning. So when you
add new components and features, they fit into your SOA Governance
model. Its a platform where you can mediate any service in a consistent
way, without having to run a separate costly ESB. And its a platform
where the administration UI seamlessly grows and extends to support
just the function you need to know and work with.
Ok. You can tell I'm ultra-enthused about this! I am. And this is just the first step. 2009 is going to be an immense year.
Downloads!
ESB http://wso2.org/projects/esb/java
WSAS http://wso2.org/projects/wsas/java
Registry http://wso2.org/projects/registry
Business Process Server http://wso2.org/projects/bps
If
you are wondering how to do cool things like adding Java Service
Hosting to ESB, well the official downloads of Carbon Plugins are still
a couple of weeks away. But Charitha has given us an early preview if you don't mind a bit of DIY!
The effort involved in getting 4 new product releases, plus a brand new OSGi framework is amazing. I cannot begin to describe the greatness of the team that did this, but suffice to say WSO2 has an amazing crew. Congrats to everyone - this is a major step forward in SOA technology.
Paul Fremantle is CTO at WSO2, where he leads the technical team in the most dynamic Open Source Middleware company. He has been the chair of the WSRX TC at OASIS and he is VP of Apache Synapse at the Apache Software Foundation. Paul has co-authored two books on XML and Web Services and is a regular speaker at conferences. Previously Paul was a Senior Technical Staff Member at IBM where he led development of the IBM Web Services Gateway. In his spare time Paul plays traditional music on the tin whistle. Paul is a DZone MVB and is not an employee of DZone and has posted 2 posts at DZone.
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)










Comments
michalsss replied on Tue, 2009/06/16 - 12:06pm
reenu replied on Tue, 2009/06/23 - 3:21am
WSO2 Business Process Server 1.0 it's really a good product.
Teeth Whitening