Blogs

Redmonk

OSGi and The Rise of The Stackless Stack: Just in Time

When I first heard about OSGi I had no clue what it was. To be honest I initially confused it with OGSA, the Open Grid Services Architecture, which seems like another over-ambitious (and ultimately unsuccessful) initiative to enable pooled computing resources through traditional vendor standards efforts.

But I swiftly realised the error of my ways. OSGi has massive potential. It is an industry changer. Any time an initiative from the cell phone and device world is enthusiastically adopted by major middleware vendors you think it has to be worth examining. So what is the Open Services Gateway Initiative (OSGi) and what does it have to do with Stackless Stacks? Component-based development is a common idea, but component-based production is a whole different ballgame.

OSGi in the Wild

OSGi allows modules of Java classes to be loaded on demand. There is no need to load the entire Java stack to run an application - just the runtime services it actually requires. OSGi therefore enables a more dynamic, less constricted Java, which partially explains its enthusiastic backing from major vendors such as IBM, BEA and Oracle. Sun is not such a big fan because it fears a loss of control of Java stack standards efforts. (How many times will I have to write that?)

IBM and BEA are currently more aggressive in consuming OSGi than exposing it in their production environments. Nobody is talking about a Websphere OSGi Edition for example. But OSGi is underpinning some of IBM and BEA’s most interesting technologies.

BEA’s ”micro-services” architecture, allowing it to be far more flexible in absorbing acquired technologies, and repackage existing technologies in different bundles, is OSGi-based.

Meanwhile IBM Lotus Expeditor, a client side integration framework, is extremely flexible. Customers can, for example, choose to deploy only those services which they require for collaboration applications. That is, the enterprise can define and deploy its own service bundle, based on a subset of the “stack” IBM provides. Another powerful effect of using OSGi in its Lotus products is the slick and seamless integration it enables- for example with Cisco IP Communicator.

The Death Of The Stack: SOA for production

When I planned to write this quick post I had a title in mind - the Death of the Stack. While I realised the inflammatory and possibly misleading aspects of the title, I felt it captured something of the move to more flexible production environments. The “stack”, after all, as seen on PowerPoint decks slide everywhere is a monolithic but comfortable place to run apps with confidence (and to sell middleware). It was on an OSGi call with Ian Skerrett, marketing director of the Eclipse Foundation (client), which is a strong supporter of OGSi in the shape of its Equinox runtime project, that my colleague Cote casually came up with a far better construction: “oh sure… you mean a Stackless Stack”.

As Cote himself might say- blammo!

In case you didn’t take that in - Eclipse, which used to be a developer tools framework is now evolving into a fully fledged component/service oriented runtime. SOA is one of the most hyped terms of the recent few years in IT, but the story has largely focused on design time, rather than runtime flexibility. What would a SOA for middleware deployment look like? Like OSGi.

Another technology carrying us towards the stackless stack is Spring, which simplifies interfaces for enterprise Java programming. Spring has exploded onto the Java middleware scene-already adopted by BEA, IBM (client) and Oracle in response to strong customer demand for the open source software.

Starting Up With Distributed OSGi Runtimes

An interesting example of the stackless stack approach comes from RedMonk client Paremus, which recently announced support for Spring Dynamic Modules in its Infiniflow Service Fabric product. Paremus uses the Service Component Architecture (SCA) descriptions to manage the component model, so a Spring application can be dynamically loaded and reloaded from a single machine to a massive cluster.  Build in Eclipse then choose a target deployment architecture. Sweet.

As Paremus puts it: “the production runtime is built in the same way as the application”. Its early days for the company but the kind of standards-based open source approach it is taking is finding favour, notably in financial services companies in London and New York. Spring is increasingly an ecosystem, but also an open source project with significant services revenues.

Springtime for Covalent

SpringSource, the commercial arm of Spring, recently announced it is acquiring Covalent (also a RedMonk client). This transaction will bring together two of the most successful examples of the new commercial software reality: paying vendors for services rather than code. Covalent is a major supporter of Apache, and offers support for the web and application servers. While traditional software companies encouraged customers to deploy applications on expensive JEE application servers, Covalent helps companies such as Bear Sterns, which are building enterprise-class scale out applications comprising hundreds of open source servers, but want enterprise support from a firm where the coders who built the runtimes work. SpringSource may just have lost some of its purity, but the transaction points towards the future economics of the industry. The Register developer zone calls the combo an “open source supergroup“. Well Rod Johnson, head of SpringSource, is definitely a rockstar. You’re going to hear a lot more from him. Frankly Rod is far more deserving of the tag Top Leader in Open Source business than anyone at RedMonk, but there you go. At this point I consider it a racing certainty that SpringSource is eventually acquired. Possibly sooner rather than later- the combination of Spring and Apache has got to worry traditional app server vendors. The game is changing.

Stackless, Microsoft and Green APIs

It is not just the Java world that is componentising. Microsoft is also delivering just-in time functionality to allow for targeted bundles, rather than needing to run the entire Windows stack. In discussion with Rob Bernard, Microsoft’s chief environmental strategist the other day, he suggested the approach had ecological implications. If you only run what you need you use less power. I mention Microsoft here primarily for context though, to show stackless isn’t just an OSGi story. It would be great to get your thoughts about where more flexible stacks are heading.

For more background we have some great RedMonkTV shows about OSGi, Equinox and so on.

update: super bonus OSGi buzz link roundup.

 

 

Technorati Tags: - - - - - - - - - - - -

3 Comments

  1. Posted February 6, 2008 at 1:23 am | Permalink

    Related to Eclipse and how it’s now evolving into a component/service oriented runtime, you might find interesting that Jeff McAffer, one of the first OSGi proponents as an alternate runtime model for Eclipse back in 2003 and the Equinox Project Lead, is leaving IBM to start a new company around enabling success with Equinox and Eclipse in the runtime space: http://dev.eclipse.org/blogs/jeff/2008/01/24/movin-on-well-sorta/

  2. Posted February 6, 2008 at 11:41 am | Permalink

    Hi James,

    Re:
    > IBM and BEA are currently more aggressive in
    > consuming OSGi than exposing it in their production
    > environments.

    FWIW, if you want to build new functionality on top of the Rational Jazz platform - e.g. a new team tool or an extension to an existing team tool - you do it by creating new OSGi bundles.

    This is true for extending the Eclipse UI obviously, but also for contributing a new data type on the server, contributing a new REST service on the server to expose data on the web, or contributing new Ajax UI functionality. Everything’s a bundle.

    But I agree with your statement that generally speaking IBM is more prone to not expose its OSGi-ness.

  3. Posted February 8, 2008 at 8:16 am | Permalink

    Fair post. I get a nasty feeling of déjà vu about all this – in my day it was componentsource that promised nirvana. Plenty of hurdles before mass adoption.

14 Trackbacks/Pingbacks

  1. By OSGi Buzz « Ian Skerrett on 05 Feb 2008 at 9:18 pm

    [...] James Governor from Redmonk does a great job introducing the concept of a Stackless Stack and the rise of OSGi; which made me think about Eric Newcomer’s, chair of the OSGI Enterprise Work Group, blog [...]

  2. By afongen » links for 2008-02-06 on 06 Feb 2008 at 5:21 am

    [...] OSGi and The Rise of The Stackless Stack: Just in Time James Governor. Time I went and took another look at OSGi. I really didn’t want to, but as it seems I spend my life in middleware… (tags: java javaee osgi redmonk via:monkchips) [...]

  3. [...] from. Cuomo is determined to respond to that. He is working from a blank slate, deploying to a stackless stack (or see another explanation of the stackless stack, very relevant in this [...]

  4. By The Next Thing At Eclipse… « Ian Skerrett on 17 Mar 2008 at 12:47 pm

    [...] do the same for runtimes. As James Governor and Michael Cote coined we are entering the age of the Stackless Stack and my hope is that Equinox will be an important part of making this [...]

  5. [...] become pretty huge. Taken literally, it could provide a new model for application integration, or in the words of RedMonk’s James Governor, a “stackless stack.” Governor provides a detailed listing of early offerings that are [...]

  6. [...] literally, it could provide a new model for application integration, or in the words of RedMonk’s James Governor, a ’stackless stack.’ Governor provides a detailed listing of early offerings that are supporting the OSGi model of [...]

  7. [...] literally, it could provide a new model for application integration, or in the words of RedMonk’s James Governor, a ’stackless stack.’ Governor provides a detailed listing of early offerings that are supporting the OSGi model of [...]

  8. [...] all of the projects in the new EclipseRT project (see EclipseCon slides). The whole point of the stackless stack is, of course, that selection is not only possible but [...]

  9. [...] Dare we suggest they want a “stackless stack”? [...]

  10. [...] beat things up pretty poorly there for awhile, and now we’ve got things like Mule and the old stackless-stack. That is: simplified, cheap, lean SOA. Now, never mind if those startups aren’t doing [...]

  11. [...] for drag and drop object manipulation [note to self and web - check if this client is OSGi-based, i am pretty sure the answer will be yes] . The beta is 15th April. The product is likely [...]

  12. [...] to load modules of Java classes on demand, Redmonk analyst James Governor wrote in a recent blog post : “There is no need to load the entire Java stack to run an application - just the runtime services [...]

  13. [...] of OSGi its time you did - its becoming an increasingly important standard, driving the rise of the Stackless Stack. It ties enterprise and client-side middleware together, with a compelling development model [...]

  14. By SAP’s vision towards Equinox « Ian Skerrett on 14 Nov 2008 at 2:50 pm

    [...] I agree, Equinox is one part of the solution, depending on the application other services are required to complete the solution.  The nice thing though is that Equinox’s modular architecture makes it possible for SAP to create a solution for their customers; reminds me of Redmonk’s Stackless Stack. [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*

Bad Behavior has blocked 0 access attempts in the last 7 days.

Close
E-mail It