Сервис обрабатывает CSV-файлы размером от 10 MB до 5 GB. Требуется парсинг, валидация, трансформация данных и сохранение в БД. При ошибке в середине файла нужно продолжить обработку, но зафиксировать проблемные строки. Какой подход выбрать?
Anonymous Quiz
12%
Visitor
12%
Загрузить весь файл в память, обработать через Stream API
37%
Iterator + Saga pattern
24%
Chain of Responsibility
15%
Посмотреть ответ
🤔6👍2❤1🔥1👏1
Что гарантирует ключевое слово volatile?
Anonymous Quiz
14%
Атомарность операций
73%
Видимость изменений между потоками
5%
Синхронизацию потоков
3%
Отсутствие deadlock
5%
Посмотреть ответ
👍5❤1🔥1
Вы обрабатываете очередь задач из Kafka. Каждая задача должна быть обработана ровно один раз, даже если несколько потоков читают из одной топик-партиции. У вас есть shared счётчик int processedCount для мониторинга. Как безопасно инкрементировать счётчик?
Anonymous Quiz
1%
processedCount++
10%
synchronized(this) { processedCount++; }
11%
volatile int processedCount; затем processedCount++
74%
AtomicInteger processedCount; затем processedCount.incrementAndGet()
4%
Посмотреть ответ
👍3🔥1👏1😁1