Update-Back
Зовнішній вигляд
Ця стаття не має інтервікі-посилань. |
Update Cache — шаблон проєктування для оптимізації використання кешу.
Аплікація застосовує кеш для оптимізації повторного доступу до даних. Дані рідко оновлюються, однак важлива їх актуальність. Необхідно забезпечити спосіб підтримувати актуальні дані в кеші.
Читаємо дані із кешу. При зміні даних у сховищі, асинхронно оновлюємо кеш.
- забезпечує консистенцію даних при оптимізованому доступі
- забезпечує збереження статичних даних. Кеш-сервіс реалізовує стратегії кешування в залежності від вимоги
- нормалізовані дані. Аплікації потрібно провести додаткові операції над даними, щоб привести їх до потрібного формату
- Читаємо дані з кешу.
- Кеш-провайдер забезпечує дані та їх валідність.
- Зберігаємо дані у сховище.
- При зміні даних асинхронно оновлюємо кеш.
public Data GetData()
{
return _cache.GetOrAdd(_database.GetData);
}
public void UpdateData(Data data)
{
return _database.UpdateData(data);
}
class Database
{
public void UpdateData(Data data)
{
return _queue.EnqueueUpdatedData(Data data);
}
}
class Queue
{
public void UpdateData(Data data)
{
_cache.UpdateData(data);
}
}
- What is Caching [Архівовано 22 червня 2020 у Wayback Machine.]