XML-RPC is a very cool concept that I have started to play around with. It allows Remote Procedure Calls (RPC) via XML through a http server. This allows you to create distributed applications which make use of methods on remote servers.
For example, if you have a powerful server, you can have it do all your massive compuations and return the result to the client. The otherway is to have the client get a work unit from the server, process it, and send the result back.
Right now I’m using the Frontier::RPC2 package for Perl and it is working out pretty well. I may have to hack it a bit though for the application I am currently working on. I need to be able to start the server on a random port and report that back to me. Unfortunately, the way the new method is implemented in Frontier::Daemon, it never returns so I may have to insert a hook for it to run on startup. Great fun!