The simplest possible grid computing platform ..
In his Ongoing blog Tim Bray mentions that he'll be giving a talk at this year's JavaOne called: Sigrid: The simplest possible grid computing platform. If I make it to JavaOne this year, I'll put this talk at the top of my list. There's a big gap right now in Grid Computing. There are Grid Computing APIs, but these seem to be designed for the traditional big iron apps like those used by chemical companies and Wall Street. It is hard to write grid apps with these APIs. In order to get more programmers and companies to think about moving their apps to the grid, it has to be easier to write grid apps. In particular this means:
- Use a friendly programming language like Java
- Be able to develop and test on a desktop system
- Have a minimal API
public <T> List<Future<T>> invokeAll(Collection<Callable<T>> tasks, long timeout);
With this method (based on the invokeAll method from the
java.util.concurrent.ExecutorService), a programmer can build a list of
tasks to be executed on the grid. The method will return a list of
futures that are then used to determine when the tasks have completed
(or failed). The SPAWN framework will put the callable tasks into a
JavaSpace. Waiting on this space are SPAWN process servers that will
pull the tasks out of the space, execute the code and put the answers
back into the space where they are reaped by the client. The
leases and transactions supported by JavaSpaces make this system very
reliable. If any of the systems processing one of the tasks goes down
its lease on the task will expire and the task will be given to another
system to process.
I'll very interested in seeing what Tim's 'simplest possible grid
computing platform' is like. I'm especially curious to see if it will be
simpler than SPAWN.
Posted by Cameron Purdy on January 23, 2006 at 10:56 AM EST #