We use linux virtual server, take a look to my blog for a more complete descrition. I think any load balanced router is fine if you can use different public addresses or port. If you need to make level 7 forwarding take a look to apache used as front end of tomacat
I have been using Apache as a load balancer.
I need something that understand soap that I can code in. I need to use code to decide the location to forward the message. This is talked about in the SOAP spec as intermediaries. I just have found no implementations of this