Проблемы с приложением Tomcat 8 Docx4j - PullRequest
0 голосов
/ 15 октября 2019

Я озадачен и нуждаюсь в умных предложениях.

У меня есть это веб-приложение на Java 8, разработанное с использованием Spring Boot, которое работает на сервере Apache Tomcat, имеет базу данных Postgresql и использует RabbitMq для обработкизапросы, сделанные через клиент JS, Swagger для выставленного API REST. Основная цель состоит в том, чтобы использовать общие библиотеки, такие как docx4j и ApachePOI, для чтения / записи файлов excel / word в системе.

Все работает как очарование в локальной установке. Но переход в другую среду с центральным сервером и несколькими хостами (не менее 2-3), обращающимися к клиентскому приложению, создает проблемы.

Основная проблема, по-видимому, связана с Tomcat, поскольку существует постоянная необходимость перезапускаосновное применение много раз. Также память процесса Tomcat продолжает расти. (Все потоки должным образом закрываются после любого использования).

Нет ошибок или журналов.

Уже попытался принудительно собрать сборку мусора (даже если не рекомендуется), где это возможно, без улучшений. Уже пытался сменить сервер (Wildfly) без улучшений. Пробовал в другой среде ОС без изменений.

Есть идеи?

Спасибо за ваше время.

- РЕДАКТИРОВАТЬ

Добавлена ​​поддержка APR в Tomcat для повышения производительности, но пока ничего. Я обнаружил возможное узкое место в функции, которая использует библиотеки docx4j для слияния документов. Но это происходит только в этой среде Windows.

1 Ответ

0 голосов
/ 28 октября 2019

Я отвечу на свой вопрос.

Все проблемы связаны с обработкой памяти приложения, а не с окружающей средой. Я скопировал «проблемную» среду на другой компьютер и все еще получаю ошибки. Так что это само приложение.

Спасибо всем за потраченное время.

...