Вступить в клуб →
сложнаявопросSpring Boot и REST API

Значение из application.yml не применилось в проде

Разработчик уменьшил размер пачки в src/main/resources/application.yml:

report:
  batch-size: 100

Образ пересобран, под в Kubernetes перезапущен. В логах старта видно, что приложение использует 5000. В деплойменте того же сервиса есть блок:

env:
  - name: REPORT_BATCH_SIZE
    value: "5000"

Что произошло?

  • Переменные окружения имеют более высокий приоритет, чем упакованный application.yml, и переопределяют его значение
  • Значения из application.yml вшиты в образ при сборке и после первого деплоя вообще не перечитываются
  • Spring кэширует конфигурацию во внешнем хранилище, нужен запрос на обновление конфигурации
  • Свойства с дефисом в имени не читаются из yml, нужно записать его как reportBatchSize

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела