The Source for Java Technology Collaboration
User: Password:



Jim Driscoll's Blog

June 2005 Archives


Planning JavaOne

Posted by driscoll on June 29, 2005 at 12:47 PM | Permalink | Comments (0)

In addition to working on Project GlassFish, as a manager at Sun I get assigned all kinds of fun projects. For the first time ever this year, I was involved in planning the Web and XML track at JavaOne.

Wow, that was fun - we had so many good submissions this year, it was hard to choose, but fun too.

One part wasn't fun - scheduling. Not the part you're probably thinking of - the timing of the talks - that part wasn't so bad: We just tried to only overlap a few talks. No, the hard part was playing "guess the attendance". Should a talk on Shale get a room with 450, 600, 900, 1200 seats? How about a talk on AJAX? How about a web security talk?

What would you pick? Remember, we made these choices 2 months ago.

For Shale, we picked 900. Same for AJAX. Security got 600.

The result? We came close on these, so I'm pretty proud.

Shale had a mostly full room (at lunch). AJAX blew out the room, and filled up the overflow, so we should have gone with 1200. The security talk was SRO (Standing Room Only), and probably would have filled a 900 room too.

I said close, not perfect :-)

Where else did we get it wrong? I'll see statistics in a few months, but I'm dying to know now. Any talks in rooms that looked empty? Any talks with people sitting all over the floor? Let me know, I'm dying to find out...

Also, I'd love to hear about what you didn't see that you wanted to see. Remember, I only did the Web and XML stuff, so you'll have to take your Java ME requests to someone else...



Grizzly Performance ( for the GlassFish Web Tier)

Posted by driscoll on June 28, 2005 at 04:02 PM | Permalink | Comments (0)

I'm in the Grizzly Tech session, and at the end, they're showing some performance numbers.

For a dynamic content, servlet oriented, non-trivial task, the numbers that they've found show that an all Java NIO implementation will beat out a mixed Java-C implementation. (They tested two.) Mixed implementations are the kind found today in things like mod_jk and Sun's Web Server (though they wouldn't say which they tested). Grizzly's the first NIO type implementation that we know of out there, but if these numbers hold up (and we've beaten on 'em), it won't be the last.

Why is NIO better? Crossing the JNI boundary is more expensive than the small amount that you'd give up choosing NIO over C.

Interesting, eh? (Well, it is to me.)

Oh, and of course both mixed-C and NIO totally blew away a traditional implementation, since you're thread bound and limited by the OS. But that part shouldn't suprise anybody.

Got benchmarks that say different? I'd like to hear about them...



BOF Discussion of GlassFish

Posted by driscoll on June 28, 2005 at 09:49 AM | Permalink | Comments (1)

Despite a last minute change of time, and a change of room, we packed the room to discuss Project GlassFish last night...

I presented a brief overview of our project, along with Carla Mott and Amy Roh. We intend to make our slides available from the GlassFish site after the conference. After the presentation, we had about a 30 minutes for discussion. And what a discussion - the attendees really had me hopping. Many of the questions were pretty technical, but fortunately we also had some of our architects there.

The first question was one that I'd heard many times yesterday, while staffing the booth and walking around - how's this different than all the other Open Source projects out there, like Tomcat, JBoss and Geronimo? (Sorry Jonas guys, that's the list the I get in the US.) And, why should I use it? After all, I'm happy where I am.

Well, if you're truely happy using the product you currently have, nothing I say will make you want to change anyway. But, assuming that your happiness is less that perfect (computer people rarely find the One True Software), let me throw a small list out there (hardly complete):
  1. We're cutting edge stuff. Our Java EE (formerly J2EE) engineers work directly with the people leading the specs. In some cases, they are the people leading the specs. We've always been first out the door with the new stuff, and we're going to keep that up. In many cases, we're beating the other guys out the door by over a year. Also, on a side note, please note that Tomcat isn't on the list I linked above. That's because they're not Java EE. Some people are confused about that. (Are you one? Let me know, and I'll put out a blog about what I mean when I say that...)
  2. We've been doing this a long time. In fact, some of our engineers (and me) have been doing this longer than anyone else on the planet. That's because we were part of the team that came up with the very idea of Java EE. Now, that's a mature team, and a mature codebase. We're pre-beta right now, but even given that, I think you'll be pleasantly suprised by how we're doing with our code stability.
  3. We're very proud of Grizzly. Other folks will eventually do their HTTP stuff this way, too, but for now, we're first. Come check it out. If you haven't heard about Grizzly, and you're at JavaOne, come to the talk today that goes over the tech behind it at 2:45 today, in Hall E 134.
  4. We're also proud of how easy we are to use... Come by and download, and see what I mean.


I'll leave the list there for now, but I could go on. After they've rested up from this week, we'll get out the horsewhip and have our marketing guys come up with a list for you, since this is such a common question.

As always, I'd love to hear your comments.

What is this CDDL thing, anyway?

Posted by driscoll on June 28, 2005 at 08:11 AM | Permalink | Comments (6)

The CDDL License has been talked about quite a bit since Sun submitted it to the OSI (the independant body that validates Open Source licenses). At it's heart, it's basicly just the Mozilla Public license (in use for things like Firefox), with some bugfixes. For a really good description of the process Sun used in coming up with the CDDL for OpenSolaris, check out Claire Giordano's Blog on CDDL. Why did we pick CDDL for GlassFish? Well, there were quite a few good reasons, but two of the bigger ones were that we liked the copyleft provisions, and that we thought that the OSI had a point about license proliferation. We already had chosen CDDL for OpenSolaris, and the more we looked at CDDL, the more we liked it. Still have questions? I'd love to hear them.

Reannouncing Project GlassFish

Posted by driscoll on June 27, 2005 at 09:24 AM | Permalink | Comments (3)

One of the hardest parts of my job at Sun is keeping secrets. Especially when folks start critiquing you. It is quite exciting though, once the secret's out.

At JavaOne this morning, Sun's Jonathan Schwartz announced that Sun was Open Sourcing our App Server PE, under the project GlassFish. I'm the manager of that effort, and I'd like to tell you a little about it.

First: yes, it's really Open Source. It's under the CDDL license, which is an OSI approved license. The source for AS PE is already labeled with CDDL - go check it out. Source for some related projects is also being placed under CDDL as well.

Also, we're committed to an open process, not just an open license - the XML technologies already have five non-Sun committers, and Project GlassFish also has it's first non-Sun committer, despite being less than a month from its first public launch. A big part of this open process is making the CVS tree available for you. This is the same CVS tree that the folks already working on the code use, so you can see the whole process. We're similarly working on getting bugtracking visible as well, though that's not done yet.

And this brings me to my next point - we've got a lot of work to do before we're finished. Right now, most of the code is out there, but there are currently pockets that aren't - this is why when you look at our license, in addition to CDDL you'll see a Binary License as well. This binary license is a temporary measure that we'll use until all the source is available. Just to be clear, the CDDL covers the source, and the binary license covers the binaries we currently include without source. We're working hard to get all the code out the door, and I look forward to the day when we'll remove the Binary License entirely. Look for a roadmap to be published later in the summer. Moving a project like this into Open Source is an incredible amount of work, but that's a topic for another Blog.

Additionally, we've broken up the larger App Server into smaller, more easily understood pieces we're calling our Modules. Although most of the code is out there, we're rolling out our teams for different modules into the open community one at a time. We've started with our team for the Web Tier, which just happens to be the team I'm in charge of managing (and I bet you were wondering how I got this job). Our web team's been working in Open Source for years now, they're also the folks who've come up with Grizzly, a blazing fast and scalable web architecture that's based on NIO. They're also the nicest, most helpful bunch of people you'd ever hope to meet - come by the dev alias at glassfish and say hello.

One last thing, and then I'll stop for today - this is Open Source, and we can't be successful without you. As I already mentioned, this is a work in progress, and we want to hear from you. Find stuff that annoys you about how we're set up? Tell us. Find stuff that you like about how we're set up? Tell us that, too.

I look forward to hearing from all of you.



Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds