Я правильно понимаю, вы пытаетесь использовать БД как кэш?
Если вам нужен именно кэш - почему вы удивляетесь, что данные теряются? Это вполне нормальная ситуация, я бы рекомендовал посмотреть в сторону memcached/redis, apc все же лучше для хранения опкодов.
Если же вам нужна БД - либо шардируйте, либо проводите оптимизации хранимых данных, либо прокачивайте кэш до уровня "на чтение бд вообще не трогается".
Под задачу синхронизации не плохо подходит решение:
1. Есть очередь (либо список) под rabbitmq, или любым другим менеджером очередей.
2. При любом изменении данных в БД - в очередь записывается сообщение об этом.
3. На зависимых серверах в постоянном прослушивании находятся обработчики, которые выполняют действия, записанные в сообщениях из очередей.