The Artima Developer Community
Sponsored Link

Weblogs Forum
Jini Community Meeting - Part II

2 replies on 1 page. Most recent reply: Mar 31, 2004 11:57 AM by Steve Hoffman

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 2 replies on 1 page
B. Scott Andersen

Posts: 16
Nickname: bsandersen
Registered: Jun, 2003

Jini Community Meeting - Part II (View in Weblogs)
Posted: Mar 23, 2004 2:31 PM
Reply to this message Reply
Summary
This is the second of a set of blogs from the Seventh Jini Community Meeting held in Cambridge, Massachusetts March 23-25, 2004.
Advertisement

The Seventh Jini Community Meeting II

This is the second of a set of blogs from the Seventh Jini Community Meeting held in Cambridge, Massachusetts March 23-25, 2004.

caveat: I should remind everybody that these are my observations and thoughts and not necessarily of those of my employer, any other member of the Jini community, or indeed anyone else on the planet. I'm a member of the Jini development team so these next few blogs will be "a little closer to home" than the essays I've done for Artima previously. Well, consider yourself warned! <grin>

Coming of Age

Here are some observations from the afternoon sessions which backs up my views that Jini has come of age.

Orbitz

Orbiz has gained a foothold in its market as the third largest travel web site in roughly the last three years. They are also a monsterously large Jini shop. With over 1300 Jini-based services running in approximately 300 VMs, it is likely the largest Jini-based application you will use. That's right, you. Every time you buy an airline ticket, book a hotel room, reserve a car, or uses any of the other services sported by Orbitz, a hand-full of Jini-based services are employed.

You might think that the presentation by Orbitz to a audience full of Jini developers would concentrate on the general architecture and specific uses of Jini in the system. Nope. And that's a good thing. The Jini apsect of the system architecture is reasonably straightforward and was described easily in the first part of the presentation. The remainder of the time, and the thrust of the talk, was on the monitoring aspects of a large scale distributed system with Jini-based services.

It was subtle, but the message I got from this was clear: Jini is just another great technology used to construct high-value solutions... now let's talk about how to manage the deployment. Consider the alternative views: Jini is new, Jini is risky, Jini is obscure, Jini isn't ready for prime time. The presenters from Orbitz skipped right by any of those doubts and went directly to we created a great solution with Jini and now we're working to make it easier to manage.

The Orbitz folks had the same asperations I've had when I have built large systems. They wanted to create a system that would actively assess the health and efficacy of the distributed system components and be able to take preemptive actions to avoid customer-visible failures. One of the terms the presentation team (the presentation was done tag-team style with three engineers) put forth to describe their goals was autonomic computing-- a term that I know I heard kicked around the Jini group at least a year before it began appearing in IBM advertisements. Regardless of the genesis of the term, the meaning is clear: automation of management, provisioning, and error-recovery is critical to availability of a complex distributed system. The Orbitz team has a good idea of what the next steps will be for their system.

At the conclusion of the prepared remark, one audience member asked what many of us were wondering: why didn't they just use J2EE? (Or, more appropriately, how did you get away with not using J2EE for all this?) Their answer was thus: when they first looked at Jini, they couldn't help but notice that its cool. But, besides that, their first impressions of J2EE were that it was expensive and heavyweight. They do use some J2EE--but its wrapped behind a Jini-based service(!). In the end, the extra machinery, and cost, of a J2EE-based solution was a strong disincentive. But, such a statement probably "damns with faint praise" their view of Jini Technology.

The Jini Way(TM) was the best approach based on the Orbitz engineering team's understanding of the problem. The problems they were left with, that of monitoring the health of the constituent parts of the system and responding to problems, is the class of problems that you'd need to solve for any production web site.

Again, my impressions from the talk (other than the Orbitz folks are pretty smart) were this: Jini technology is a killer technology that's come of age.

Countrywide Group

Taking something new and carving out a solution from whole cloth is one thing; taking an existing company and an existing codebase and converting portions of a large application suite to use Jini is quite another. Countrywide Group, a large insurance provider in the United Kingdom, had such a challenge and found Jini's benefits to outweigh any transistion costs. Their view of Jini and its alternatives were captured in one sentence near the beginning of their presentation:

"Jini was the only way we could maintain all our generic requirements and our enterprise requirements in a cost-effective manner."

Like the Orbitz presentation, there was a question that was going to be asked about J2EE. Calum Shaw-MacKay, the presenter from Countrywide, anticipated the question and had this early in the presentation:

"Why didn't we choose J2EE? Of the vendors we talked to, no vendor understood what we wanted to do. They kept talking about XML and web services but that wasn't what we were trying to do. They were more helpful in sell us a product than helping us with our solution."

They went so far as to drop an existing J2EE effort in favor of Jini. That's right: they had J2EE and threw it out. Why? I'm guessing they were looking for the lesser of two evils:

  • Changing horses in mid-stream (from J2EE to Jini), or
  • Riding a dead horse that wasn't going to get you there anyway (J2EE)

This isn't meant to be an indictment of J2EE. Quite the contrary, J2EE is a fine technology that has its place. But, no technology is a perfect solution to all problems. Jini happens to provide a reasonable set of tools for the problems that Countrywide had as highlighted by this notion found later in the presentation.

"We have not yet come across an intergration problem that cannot be solved using Jini and JDK. Jini isn't just 'cool', and it is suitable for enterprise environments. Jini lends itself to more solutions than J2EE... but is compatible with J2EE."

Jini isn't a one-size-fits-all solution any more than J2EE is. However, the ability to use only those pieces of Jini appropriate to your problem was also an attractive attribute of Jini technology. J2EE, somewhat monolithic and indivisible, doesn't provide the same kind of granularity that a Jini-based service architecture provides.

Money on the Table

Did you notice something about both of these applications? They were both dealing with real money. There is money on the table with both of these applications. Failure of these applications will result in losses that can be traced directly to the bottom line.

While there are many metrics that can be employed to assess the maturity of a technology, here's one that I think is irrefutable: if folks with use the technology to manage money, it is a mature technology. To that end, I think the jury is in: Jini has come of age.

Resources


Frank Sommers

Posts: 2642
Nickname: fsommers
Registered: Jan, 2002

Re: Jini Community Meeting - Part II Posted: Mar 23, 2004 5:36 PM
Reply to this message Reply
Thanks, Scott, for blogging during the Jini meeting. Your reporting is the only solace for us who could not make it there. Please keep up your reporting...

Steve Hoffman

Posts: 2
Nickname: hoffman
Registered: Mar, 2004

Re: Jini Community Meeting - Part II Posted: Mar 31, 2004 11:57 AM
Reply to this message Reply
First let me say thanks for such a nice review of our talk (Orbitz). It was great meeting everybody in the community -- or at least the ones I got a chance to talk to.

I wanted to address your comment on my answer to the J2EE question. I have to admit I was caught off guard a little (this was my first speaking engagement). I was expecting the hardest question to be "why aren't you guys using Jini 2 yet?".

Now that I've had some time to think on it, I realize that my reply made it sound like the only reason we didn't use J2EE was because Jini was cheap in comparison. While true, this was not the major reason.

Jini has obvious benefits that we couldn't ignore. We like that we could horizontally scale our app simply by starting more services and the discovery/lookup mechanism would just take care of integrating the new capacity. We like that we could run several copies of a service and if 1 died (from a hotspot error or something stupid we did) there would be plenty of other places the caller could go. We like that we get pseudo load-balancing across services (by random selection). I could keep going, but you already know all the other benefits of using Jini...

So please don't let me leave you with thinking we only like Jini 'cause its free. Jini is much more than that. The price is just icing on the cake.

To the question of how we got away without using J2EE, as I mentioned, we didn't. We do think J2EE has a place in our systems. The point I'm not sure I made was that it doesn't have a place everywhere in our applications. Luckly, the culture at Orbitz is such that we are encouraged to seek out technologies that will get stuff done -- not just to use what everybody else is using. If J2EE fits the bill, we use J2EE. If Jini fits the bill, then Jini it is...

Reminds me of a book I read a zillion years ago by Guy Kawasaki called the Macintosh Way. In it he uses the term "Right Thing, Right Way." which is how I think of it. Use the right tool for the right job. Jini just turned out to be the right tool when we were looking for a lightweight service-oriented infrastructure that didn't impose limitations on how much we could grow it.

Hopefully, we'll get a chance to meet and talk at JavaOne.

Thanks,
Steve

Flat View: This topic has 2 replies on 1 page
Topic: You are Under Attack Previous Topic   Next Topic Topic: My Entry into the Blogosphere

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use