Simple server cluster

I have three servers that use Cloud Resolution DNS to assign different access weights and lines. What I want to ask is how to store and process the data? What I want in my mind is to store it in a database, cache it when reading, and use celery to do asynchronous tasks when writing. The problem is that each server has to deploy celery worker, and celery needs to be deployed when a new server is added. Second, each server has its own database, using scheduled tasks or other ways to update the main database data, such a problem is that each deployment after code changes will be very troublesome, all need to do database version migration. Or is there any other better solution that has a better effect in solving the visit delay and makes the visit of all countries in the world faster?

MySQL Query : SELECT * FROM `codeshelper`.`v9_news` WHERE status=99 AND catid='6' ORDER BY rand() LIMIT 5
MySQL Error : Disk full (/tmp/#sql-temptable-64f5-1bf5511-312c6.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
MySQL Errno : 1021
Message : Disk full (/tmp/#sql-temptable-64f5-1bf5511-312c6.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
Need Help?