Встречается на 2% собеседований по Java

Что выберешь для кэширования ответа от запроса к какой-то системе

Для кэширования ответов от внешних систем в Java чаще всего используют:

  1. Caffeine - современная высокопроизводительная библиотека:
java
Cache<String, Response> cache = Caffeine.newBuilder()
    .expireAfterWrite(10, TimeUnit.MINUTES)
    .maximumSize(1000)
    .build();
  1. Ehcache - если нужна поддержка JCache (JSR-107) и распределённое кэширование

  2. Spring Cache - удобная абстракция при работе со Spring:

java
@Cacheable(value = "responses", key = "#requestId")
public Response getResponse(String requestId) {
    // вызов внешней системы
}

Выбор зависит от требований:

  • Для простых случаев - Caffeine (лучшая производительность)
  • Для Spring приложений - Spring Cache
  • Для распределённых систем - Redis или Hazelcast

Важно учитывать политику инвалидации (TTL, размер, ручная очистка) и мониторинг попаданий в кэш.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы