Кэширование: обработка сценариев сбоев для асинхронных вызовов
Я создаю приложение, в котором я использую кэширование, чтобы уменьшить задержки и нагрузку на мою БД. Проблема, с которой я сталкиваюсь, заключается в том, что используемый мной клиент кэширования обеспечивает асинхронный вызов для публикации данных в удаленном распределенном кэше, поэтому я не могу понять, как справиться с таким поведением.
Например, - есть переменная X=10
присутствует как в БД, так и в кеше. Так что, когда X меняет свое значение на X=20
Я хочу убедиться, что и в БД, и в кеше его значение обновляется. Для БД я могу сделать синхронизирующий вызов, так что все в порядке, но с кешем у меня есть асинхронный метод, который возвращает void, поэтому я не могу достаточно обеспечить успешный сценарий публикации кеша.
Дело в том, что я не хочу читать устаревшие данные из кеша, я всегда хочу читать обновленные последние данные.
Есть ли обходной путь для таких проблем?