Estou usando um servidor dedicado que virtualiza máquinas Linux, o data center está localizado na Europa.
Todas as máquinas virtuais são servidores Linux, uma é o front-end Apache e a outra é o banco de dados Mysql.
Agora preciso espelhar este servidor nos EUA e na Ásia, para melhorar a velocidade e permitir o SEO.
Pensei em rsync, mas quero entender quais são as melhores práticas para manter todas as máquinas atualizadas, mantendo a integridade dos dados.
Como as grandes empresas resolvem o problema?
Editar (detalhes do aplicativo): O aplicativo é um SaaS de conteúdo gerado pelo usuário, portanto, os usuários alteram continuamente o banco de dados e o sistema de arquivos. Suponhamos que seja algo semelhante ao Google Docs, não é possível armazenar tudo em cache e implantar clones estáticos por aí.
Responder1
Ao descrever sua aplicação, temo que não será muito fácil 'espelhar'. Principalmente se os dados precisarem ser alterados em tempo real (como acontece com o GDocs).
Receio que o MySQL não seja um banco de dados muito bom para tal implantação. O sistema de arquivos é outro problema.
A melhor coisa que você pode fazer a longo prazo é provavelmente redesenhar tudo para usar ferramentas melhores para o trabalho. E eu sugiro fortemente que você contrate alguém que tenha experiência com esse tipo de software para consultá-lo para você.
Você pode usar o CDN. As CDNs não visam implantar conteúdo estático em todos os lugares. Eles geralmente funcionam como um proxy de cache para seus servidores.
Se as solicitações do seu aplicativo forem muito difíceis de armazenar em cache no nível HTTP, você poderá escrever seus próprios servidores/mecanismos de cache, que entendam o funcionamento interno do seu aplicativo.