"Нека добавим кеширане, за да е по-бързо."

6 часа по-късно: "Защо кешираният отговор е грешен?"

Кеширането разменя простота за скорост. Сега трябва да мислите за:

  • Кога да инвалидирате
  • Cache stampedes (бурни заявки при изтичане)
  • Сервиране на остарели данни
  • Загряване на кеша
  • Консистентност на разпределен кеш

Какво се случи:

Кеширахме API отговор, който включваше потребителски специфични данни. Ключът на кеша не включваше ID на потребителя. Всеки потребител виждаше данните на първия потребител в продължение на 6 часа, докато някой забележи.

Въпроси преди кеширане:

  • Данните специфични ли са за потребителя?
  • Колко често се променят?
  • Каква е цената на сервиране на остарели данни?
  • Можете ли лесно да ги инвалидирате?

Урок: Най-бързият кеш е този, който не ви трябва. Първо оптимизирайте заявката. Добавете кеширане когато сте измерили реалното въздействие.


← Назад към Научени Уроци