Thursday, December 28, 2006

Apache River

Apache River is a new Apache podling (incubated project).

This should be fun to watch.

2007 is going to be fun I think.

"River" is a good enough name - I like it, but then again, I love rivers

4 comments:

Sarge said...

Sweet. What portion are you working on?

Mike said...

I don't have any experience with Jini, but from the project description it sounds like mobile code where the code hides the network protocol and 'api' used.
If applications used the same protocol, and it were simple, would that remove a large part of the value of this mobile code?
Or is there more, such as one-to-many messaging, guaranteed delivery, etc.?

fuzzy said...

Good to hear from you Mike. Hey move to Portland and work with us ;)

I am not smart enough at Jini yet to have an opinion on the mobile code business.

I do have an opinion on JavaSpaces - or at least I am forming one.

I'm primarily interested in seeing where that goes with this project (e.g., where Jini Starter Kit Outrigger and Dan Creswell's Blitz go).

Anonymous said...

Hi Mike,

"....but from the project description it sounds like mobile code where the code hides the network protocol and 'api' used.
If applications used the same protocol, and it were simple, would that remove a large part of the value of this mobile code?"

From my perspective, no these are not the same. If you force all clients to agree on the protocol ahead of time you have a level of coupling across your system that you don't get with Jini. In Jini-land clients don't need to know the protocol and in fact, we can do all sorts of magic like teach clients new protocols over time, upgrade our protocols seamlessly all thanks to movable code.

Another thing that can be done is to dynamically choose a protocol suited to individual clients such that a mobile communicates with a service using a protocol suited to a low-bandwidth link and low-memory usage whilst a PC get's a protocol that takes advantage of a fast network link, more CPU and memory.

Note Jini allows us to do all the above at runtime with no prior knowledge in the client.

Dan Creswell
http://www.dancres.org/