Ошибка нехватки памяти (пространства кучи) в приложении Springboot при вызове curl для конечной точки REST из сценария оболочки - PullRequest
0 голосов
/ 13 февраля 2019

У меня есть приложение, которое можно разделить на следующие шаги

  • Получить базу данных формы данных
  • Форматирование данных
  • Запись окончательного результата вfile

Ниже приведено несколько подробностей о нем и его текущем поведении

  • Это приложение Java Springboot.
  • Оно имеет дело с более чем 2,5 миллионамизаписывает и генерирует файл размером ~ 500 МБ
  • Процесс вызывается двумя способами
    • Планирование внутренней пружины
      • Планирование внутренней пружины уже на месте ипроцесс вызывается автоматически в эти часы.
      • Процесс завершается за 1,5 часа .В промежутке между этим для получения данных требуется более 1 часов .Остальное время используется для форматирования данных и записи файла.
      • Процесс успешно завершается при каждом случае.
    • Конечная точка REST
      • Используется из сценария оболочки , который в свою очередь имеет вызов curl для доступа к этой конечной точке.Эта конечная точка вызывает тот же процесс, что и внутреннее планирование.
      • Этот сценарий запускается пользователем, отличным от первого.
      • Процесс поиска и форматирования данных работал нормально, но при этом возникают проблемы с памятью.запись в файл не всегда выполнялась.
  • Различия между двумя подходами, выявленные на данный момент, следующие:
    • user отличается.
    • Первый выполняется как java сам процесс.В то время как второй следует за цепочкой процессов bash -> curl -> java .

Я подозреваю, что может быть какой-то пользователь и / или процессопределенное ограничение памяти, которое вызывает это противоречивое поведение.Пожалуйста, предложите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...