Messaging often seems to be under used. It is often a great way to handle interop (hence Brian's idea), and a fantastic way to handle scaling out your architecture.
The pull model means that you can ramp up worker processes when it makes sense.
For example, if you ran an amazon.com the use case that HAS to work is purchasing books. Book reviews however, aren't as important. So, to get around having DB bottlenecks, you could have the book review process put messages on a message queue. When traffic is low, you can startup some workers to take care of the reviews. If you don't have the horsepower you can turn them off.
In traditional RPC the clients are pushing info at you, and you HAVE to handle it.
With Brians nice abstraction, I could even have my Rails apps play nice, and have them throw messages onto the queue that some backend system can fulfil on.