Forgive me if this has been discussed elsewhere (I know some of it has) but I was hoping for a bit of a steer on this one.
I work on a part time basis teaching Aeromedical retrieval for a University in Australasia and we are currently adding moodle to our portfolio of distance learning applications. Im actually based in the UK and am informally leading this project (due to some previous experience with LAMP).
I have a working moodle install on Cent on a UK VPS which I incredibly pleased with - so much so that I’m hoping to go live this semester and not next. One of my few issues surrounds Internet latency. Whilst most Universities need to service a relatively local population of students and faculty, our course members are literally spread out all across the world. Our tests have shown that connections from Europe are pretty quick, and make the system eminently usable, but from Aus and NZ to UK the latency makes the system a whole lot less attractive.
To get round this we would like to run mirror servers in the US, Middle East and Aus. So, to the crux of my question, and forgive me if it’s naive - WAN networking and replication is really not my thing. What is the best way of achieving this? My first idea was to run rsync on both the machines - each instance of rsync updating the files of the other servers overnight. Have not tried this yet but already I see storm clouds gathering if I do this with more than two servers.
Secondly, I read that keeping two or more mySQL servers in sync across a WAN can be a nightmare. Is this right or are there ways of replicating mySQL data across multiple servers a cross the WAN that live on geographically distanced VPS machines?
Although not great from a latency perspective, is it better to have a single mySQL server for all the instances but have the files on each machine? This means that the big bits of data that the students need to shunt around (assignments, essential readings etc) will be local to them and the other 'light' data will come from the mySQL server in London.
In short, it’s not the loading on the servers that will be the problem - I could comfortably manage all the students concurrently on the London server, nor is it the bandwidth out of London - it’s a good size pipe, it’s the Internet latency across the world that worries me.
Sorry for such a long post - any guidance or comment would be much appreciated.