Spring RestController не работает нормально, когда получает два или более POST-запросов за одну и ту же миллисекунду - PullRequest
0 голосов
/ 19 мая 2019

У меня проблема с Spring RestController. Ожидаемое поведение: получить POST (некоторое XML-содержимое в теле), выполнить некоторые действия с ним: анализ XML, декодирование Base64, преобразование XSLT, запись в базу данных.

Каждое действие (синтаксический анализ xml, декодирование Base64, преобразование XSLT, запись в базу данных) является отдельным компонентом с областью действия PROTOTYPE. В моем журнале я вижу:

  1. получать контент:,
  2. разбор xml, 2.OK
  3. декодировать Base64, 3.OK
  4. XSLT-преобразование, 4.OK
  5. запись в базу данных, 5.OK.

Когда я получаю два запроса в одну и ту же миллисекунду, в моем журнале появляется ошибка:

Ошибка разбора xml - null

В логе вижу:

  1. получать контент:,
  2. получать контент:,
  3. парсинг xml,
  4. разбор xml, 1.OK,
  5. декодировать Base64, 2.OK
  6. XSLT-преобразование, 3.OK
  7. запись в базу данных, 4.OK.

Второй запрос исчезает. Я ожидаю большой входящий трафик. Мой код написан на Spring Boot, я использую стандартный стиль Spring 4 (@RestController, @PostMapping), определяю отдельный компонент для каждого действия. Кто-нибудь может помочь?

...