The Carbon Story


Published on

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

The Carbon Story

  1. 1. WSO2 Carbon Middleware à la carte December 2008
  2. 2. From traditional SOA products .. <ul><li>Commoditization, followed by customization, are symptoms of maturing markets. Enterprise middleware has unfortunately not benefited from this pattern, yet. </li></ul><ul><li>Major vendor SOA products have good technology, but they have been cobbled together by acquisitions over time. The result is bloated, complex components that fit poorly together. </li></ul><ul><li>The objective of SOA is the development of loosely-coupled, interoperable network of services, that can be published, discovered and invoked in novel ways. </li></ul><ul><li>It is time that SOA middleware took some of its own medicine! </li></ul>
  3. 3. .. to WSO2 Carbon <ul><li>With a componentized, customizable SOA platform, you can adapt the middleware to your enterprise architecture, rather than adapt your architecture to the middleware. </li></ul>
  4. 4. What is WSO2 Carbon? <ul><li>A component-based SOA platform based on Equinox and OSGi </li></ul><ul><li>A new release of each of our current server runtimes: </li></ul><ul><ul><li>Web Services Application Server 3.0 </li></ul></ul><ul><ul><li>Enterprise Service Bus 2.0 </li></ul></ul><ul><ul><li>Registry 2.0 </li></ul></ul><ul><ul><li>(Mashup Server and Data Services coming 3 months later) </li></ul></ul><ul><li>Also coming soon, a new Carbon based product: Business Process Server – our entry into the BPM market </li></ul><ul><li>Still very closely based on Apache technology: Apache Axis2, Apache Synapse, Apache ODE, Apache Tomcat and more </li></ul><ul><li>A well defined component model for Enterprise SOA Middleware </li></ul>
  5. 5. OSGi <ul><li>Originally designed as a modularity model for embedded and mobile devices </li></ul><ul><li>Increasingly used as a framework by Enterprise Middleware </li></ul><ul><ul><li>Spring dm Server </li></ul></ul><ul><ul><li>IBM WebSphere </li></ul></ul><ul><ul><li>JBoss AS etc </li></ul></ul><ul><li>Provides several important capabilities: </li></ul><ul><ul><li>Modules / Bundles as a more granular aspect than a package </li></ul></ul><ul><ul><li>Versioning </li></ul></ul><ul><ul><li>Dynamic loading support </li></ul></ul><ul><li>SOA for the infrastructure – using a service model within a JVM </li></ul>
  6. 6. What motivated this? <ul><li>Customers were increasingly using multiple parts of our platform together in ways we hadn't envisioned </li></ul><ul><li>For example, a major Management Software Vendor is using our WSAS, ESB, Registry and Business Process Server to fully integrate multiple legacy products </li></ul><ul><li>Two major issues: </li></ul><ul><ul><li>Our “product” categories sometimes don’t fit customer requirements </li></ul></ul><ul><ul><li>We were copying code from WSAS to ESB to Data Services </li></ul></ul><ul><li>OSGi gives us a standard component architecture </li></ul><ul><li>WSO2 Data Services 1.0 release in September was our “foot in the water” - now we're in all the way! </li></ul>
  7. 7. What is WSO2 Carbon? OSGi
  8. 8. Core Carbon framework <ul><li>Typical Carbon core consists of bundles performing central functionality such as security, management, clustering, caching and more </li></ul><ul><li>The core itself can be customized. Use core components of your choice, leaving out the ones you don't need in your SOA </li></ul><ul><li>Products are built by adding components to this core </li></ul>Security Mgmt Admin UI Bundle Mgmt Clustering Transports Stats
  9. 9. Enterprise Service Bus <ul><li>ESB adds mediation, proxy management, tasks and more as well as registry core </li></ul>Security Mgmt Admin UI Bundle Mgmt Clustering Transports Stats Tasks Proxy Message Mediation Core Repos
  10. 10. Web Services Application Server <ul><li>WSAS adds service hosting, JSR 181 support and more to the core </li></ul>Core Repos Data Services Data Source Mgmt DS Wizard JSR181 Service Clients Service Hosting Security Mgmt Admin UI Bundle Mgmt Clustering Transports Stats
  11. 11. The full component repository <ul><li>Any product can add any component to customize itself to meet customer architecture requirements! </li></ul>Instance UI BPEL Runtime Process UI Tasks Proxy Message Mediation Script Services Gadgets Scraping AtomPub SOA Govern Core Repos Data Services Data Source Mgmt DS Wizard JSR181 Service Clients Service Hosting Security Mgmt Admin UI Bundle Mgmt Clustering Transports Stats
  12. 12. Powered by OSGi <ul><li>OSGi is the underlying core modularization technology </li></ul><ul><ul><li>Shipping with Eclipse Equinox by default </li></ul></ul><ul><ul><li>Can be supported on Spring dm Server, Felix and Knoplerfish if required </li></ul></ul><ul><li>Uses the core OSGi approach to support plugging in new function in a managed way </li></ul><ul><li>Any OSGi bundle can be deployed (e.g. ActiveMQ) </li></ul><ul><li>New components can be deployed into an existing installation </li></ul><ul><li>Used for both server runtime as well as for componentized management console </li></ul><ul><li>Customers can write and deploy their own OSGi components </li></ul>
  13. 13. But much more than just OSGi ... <ul><li>Analogies: </li></ul><ul><ul><li>Eclipse uses OSGi but is much more – it defines how you plug Tool components into a Tooling Framework </li></ul></ul><ul><ul><li>Microsoft Office uses DLLs, but is much more – it defines how you can share a graph component across multiple document types </li></ul></ul><ul><li>Carbon uses OSGI, but it really defines how you build a consistent SOA platform </li></ul><ul><ul><li>New service types plug into the console </li></ul></ul><ul><ul><li>Security, throttling, stats, TryIt, all work on any service component </li></ul></ul><ul><li>Not just using OSGi for componentizing a single product, but rather entire middleware platform: app server, ESB, process server, registry, governance, mashup and much more </li></ul>
  14. 14. WSO2 Carbon product platform <ul><li>Our “products” are now simply our choice about how you start with this platform </li></ul><ul><li>You can assemble your own “products” by combining components and deploying them in your preferred architecture! </li></ul>
  15. 15. Comparison with proprietary SOA platforms <ul><li>Common patterns apply across all components </li></ul><ul><li>Need to understand many complex products </li></ul>Skills <ul><li>Designed consistently </li></ul><ul><li>Integrate at the JVM and configuration level </li></ul><ul><li>Spend time integrating vendors’ products not your applications </li></ul>Integration <ul><li>Install new function into an existing deployment </li></ul><ul><li>Same Admin UI for all components </li></ul><ul><li>Building platforms by acquisition has meant boundaries between components </li></ul>Continuity <ul><li>Choose what you need </li></ul><ul><li>Total platform < 150Mb </li></ul><ul><li>Designed for distributed deployment </li></ul><ul><li>Large monolithic products encourage centralized deployment </li></ul>Deployment <ul><li>Start simple and grow </li></ul><ul><li>Heavyweight </li></ul><ul><li>Difficult to install and configure </li></ul>Agility WSO2 Carbon Proprietary
  16. 16. Use case: POJO service and logging <ul><li>Anna is a POJO Service developer </li></ul><ul><ul><li>She has an existing POJO service </li></ul></ul><ul><ul><li>The analytics department would like her to send a copy of every service request to them </li></ul></ul><ul><ul><li>She could write a new Handler in Java, but she discovers it takes 5 minutes to deploy and test the ESB Clone Mediator </li></ul></ul>Security Mgmt Admin UI Bundle Mgmt Clustering Transports Stats JSR181 Service Clients Service Hosting Message Core Repos Mediation
  17. 17. Use case: Data service and mediation <ul><li>Daniel is a Database Administrator </li></ul><ul><ul><li>He has used WSO2 Data Services to expose his Data as Secure Web Services across the Enterprise </li></ul></ul><ul><ul><li>Now he has been asked to implement an existing schema </li></ul></ul><ul><ul><li>By adding the Mediation component and using XSLT or E4X he can effectively convert the existing service interface to match the corporate schema </li></ul></ul>Security Mgmt Admin UI Bundle Mgmt Clustering Transports Stats Transform Data Services Data Source Mgmt DS Wizard Core Repository
  18. 18. Summary <ul><li>WSO2 Carbon is a significant jump forward in Enterprise Middleware </li></ul><ul><li>All the benefits of OSGi, but considerably more </li></ul><ul><li>A complete SOA platform in Open Source </li></ul><ul><ul><li>With major benefits over proprietary software </li></ul></ul><ul><li>The core runtime is proven in major existing production deployments </li></ul><ul><li>Highly adaptable to real SOA deployments </li></ul>
  19. 19. WSO2 Carbon .. Middleware à la carte! <ul><li>Adapt the middleware to your architecture, </li></ul><ul><li>not your architecture to the middleware. </li></ul>
  20. 20. Want it?! <ul><li>Get it from </li></ul><ul><li>.. 100% open source under Apache License 2.0 </li></ul>The open source SOA company