Современный бэкенд — Значения диапазона (2)

Современный бэкенд — Значения диапазона (2)

Это вторая лекция шестой сессии части 1 курса [Modern Backend] под названием «Scoped Values (2)».
В этой лекции мы подробно рассмотрим четыре основных принципа проектирования Scoped Values — официальной функции Java 25, практические шаблоны использования API, специальный механизм кэширования, а также ограничения и критерии, которые необходимо учитывать при их применении на практике.

📌 Основные темы:

  • Четыре принципа проектирования Scoped Values (неизменяемость, динамическая область видимости, однонаправленность, структурированность)

  • Сравнение времени жизни (Timeline) и поведения при затенении ThreadLocal и ScopedValue

  • Шаблоны объявления и привязки ScopedValue (понимание объектов where, run, call и Carrier)

  • Защита от путей без привязки и обработка исключений (get, isBound, orElse, orElseThrow)

  • Автоматическое наследование Scoped Values благодаря интеграции со структурированной конкурентностью (StructuredTaskScope)

  • Механизм 16 потокоспецифичных слотов кэша и принципы оптимизации производительности

  • Ограничения их применения в Servlet Filter по сравнению с HandlerInterceptor

  • Ограничения распространения через границы асинхронных потоков (ExecutorService, @Async, Reactor) и альтернативы

  • Три критерия для принятия решения об их использовании на практике и пошаговая стратегия рефакторинга

Подробно рассмотрим, как применять и использовать безопасное и высокопроизводительное Scoped Value, предоставляемое Java 25, в практических архитектурах.

Site footer