История изменений
Исправление DRVTiny, (текущая версия) :
В итоге я пришёл к тому , чтобы отдельно по расписанию наполнять кеш в Монго, и на веб-запросы отвечать данными из кеша. Это исключает проблемы синхронизации и делает все веб-запросы примерно равноценными по времени. Недостаток один, но хреновый: запрос может прийти в тот момент, когда кеш в процессе обновления. Но это можно обойти через создание булева переключателя, который на входе процесса обновления кеша будет перещёлкиваться в 1, а на выходе - возвращаться в 0.Только здесь есть риск, что запрос совпадёт с самым началом обновления кеша и будет ждать завершения обновления, что может быть очень длительной процедурой. Транзакций же в Монго нет?
Исходная версия DRVTiny, :
В итоге я пришёл к тому , чтобы отдельно по расписанию наполнять кеш в Монго, и на веб-запросы отвечать данными из кеша. Это исключает проблемы синхронизации и делает все веб-запросы примерно равноценными по времени.