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

Как реализовать актуализацию информации

Для актуализации информации в Java можно использовать несколько подходов:

  1. Периодическое обновление - запуск фонового потока с таймером:
java
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
scheduler.scheduleAtFixedRate(() -> updateData(), 0, 5, TimeUnit.MINUTES);
  1. Событийный подход - обновление при изменении данных:
java
// Использование Observer pattern
public interface DataListener {
    void onDataUpdated();
}

// При изменении данных уведомляем подписчиков
listeners.forEach(DataListener::onDataUpdated);
  1. Кэширование с TTL (время жизни):
java
LoadingCache<Key, Data> cache = CacheBuilder.newBuilder()
    .expireAfterWrite(10, TimeUnit.MINUTES)
    .build(new CacheLoader<>() {
        public Data load(Key key) {
            return fetchDataFromSource(key);
        }
    });

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

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

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

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

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