TGViewer
Software Engineering - Евгений Сулейманов Software Engineering - Евгений Сулейманов @esuleimanov · 4.25K subscribers
Post #373 3.21K
Друзья, прошел JVM Day.

В этот раз выступал с докладом про кэширование - "Превратности кэша: как Redis спасает latency и тихо ломает корректность".

Мне хотелось сделать не очередной рассказ про @Cacheable, TTL и "не забывайте инвалидировать кэш". Поэтому весь доклад строился как расследование одной системы: мы последовательно решали вполне реальные проблемы - высокий p95, нагрузку на PostgreSQL, устаревшие данные, stampede, холодный кэш, несовместимость данных при релизах - и почти каждый раз обнаруживали, что хорошее на первый взгляд исправление меняет систему сильнее, чем кажется, и открывает следующий класс проблем.

В итоге для меня весь доклад свелся к нескольким довольно простым, но важным мыслям:

• hit ratio показывает, как часто мы нашли значение, но не говорит, можно ли этому значению верить
• evict после выполнения метода еще не означает evict после успешного коммита
• cache miss не должен автоматически превращаться в SQL-запрос
• кэш - это не просто ускоритель, а договор о том, насколько старые данные система имеет право показать ради скорости.

Отдельно понравилось, что после выступления разговор не закончился на слайдах. Было много вопросов в частности, про то, где вообще проходит граница, после которой проще отказаться от кэша, чем продолжать наращивать вокруг него инфраструктуру.

Для меня это обычно лучший критерий технического доклада: не когда аудитория просто соглашается с набором "best practices", а когда после выступления люди начинают сравнивать услышанное со своими ПРОД-системами и спорить о границах применимости решений.

Спасибо организаторам JVM Day и всем, кто пришел, голосовал на интерактивах, задавал вопросы и продолжил обсуждение после доклада.

В целом, огранизация мероприятия была на очень высоком уровне.

Ссылка на презентацию

Запись, насколько понимаю, появится позже - когда будет, тоже поделюсь.

А пока главный вывод оставлю здесь:

Кэш - это не место хранения быстрых ответов. Это контракт о том, когда системе разрешено отвечать не из источника истины.
  • ❤ 51
  • 🔥 23
  • 👍 4
  • 😍 1
More from @esuleimanov
  1. Oct 1, 2026CPU почти пустой. А сервис уже лежит. Друзья, вышла запись моего доклада с JPoint - "Анато…
  2. Sep 28, 202610 лет преподавания. Друзья, в этом году уже 15 лет, как я разрабатываю системы и 10 лет к…
  3. Sep 25, 2026Друзья, все-таки Пятница, поэтому техничесий материал уже завтра. А пока, на фоне хайпа ку…
  4. Sep 24, 2026Искусство, которое мы заслужили… Готовимся к годовому перфоманс ревью ☺️
  5. Sep 23, 2026Друзья открываю набор на обновленный "Системный дизайн в деле". Это финальный набор в 2026…
  6. Sep 21, 2026Как меняется обучение? В этом году уже 10 лет, как я занимаюсь преподаванием и сейчас дела…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →