Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Assume a Linux/Apache/MySQL/PHP application for a small base of registered users. With small userbase, there are no traffic peaks so the scalability that cloud platforms offer is not imperative. But the system is mission-critical, so availability is the primary goal. Users are also distributed across Asia, Europe, and US, so multiple server locations that minimize users' network hops would be highly desirable.

The dream: a managed VPS platform where we would configure a single server (uploading PHP and other files, manipulating database, etc.), and the platform would automatically mirror the server in a handful of key places around the world (say one on each US coast, one in Europe, one in east Asia). File system synchronization and MySQL replication would happen automatically. Core operating system is managed, so we don't need to do full system administration and security, and low-level backups are also done by service provider, though we also do our own backups as well. Couple this with some sort of DNS geo-detection, so users are routed to the nearest operational server... with support for https, of course.

Does such a dream exist? If not, what are some approaches to accomplish the same end with minimal time investment and minimal monthly hosting costs?

share|improve this question

1 Answer 1

One approach would be caches at each desired location ( maybe even within the offices ), and maybe have regional DNS entries. Maybe architect so that each location has its own db and app server, and sync between databases.

Since I know more about rails apps, one could be configured to use a master mysql database, and a local mysql read slave. Or try working out a multi master mysql setup along the lines of http://www.mysqlperformanceblog.com/2011/01/12/conflict-avoidance-with-auto_increment_incremen-and-auto_increment_offset/ or even a "NoSQL" distriubuted database, where in reads and writes locally, and it distributes the data.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.