This is good information, so thanks for helping out.
drdb may suit our needs, but I wasn't clear before, we believe the nature of the app is such that we need both databases up and running and always synced. drdb appears to implement the master/standby slave architecture. We can be down no more than five minutes per year, so yeah, being down for any significant chunk of time is best avoided.
I haven't thought of using a distributed caching tier across a large network. I wasn't aware that app servers could run across such large networks either, I had the impression they worked within local machines. Can an app server guarantee ACID semantics if the underlying databases don't support two phase commits? Also, I hate to say it, but Java provokes a strong allergic reaction from the client paying our bills. Can you suggest a C/C++ based app server that might be applicable to our needs?
Thanks again,