Ответ 1
Возможно, это медленное из-за сканирования пути к классам, которое требуется для аннотационной конфигурации Servlet 3.0. Если вам не нужны эти функции, попробуйте добавить metadata-complete="true"
к web.xml
.
Недавно я начал внедрять Tomcat 7 для своих интеграционных тестов, а не Tomcat 6, поскольку мне нужны некоторые из 7 функций и это наш целевой контейнер. Производительность очень медленная по сравнению с встроенным Tomcat 6. Для запуска сервера требуется порядка 20 секунд. Это код, который я использую:
Tomcat tomcat = new Tomcat();
tomcat.setPort(port);
tomcat.setSilent(true);
tomcat.setBaseDir(".");
tomcat.getHost().setAppBase(webappDir);
tomcat.addWebapp(context, "");
tomcat.start();
Кто-нибудь еще испытал это или получил предложения по повышению производительности? Я запускаю тесты на Windows 7, Linux Mint и Ubuntu.
Возможно, это медленное из-за сканирования пути к классам, которое требуется для аннотационной конфигурации Servlet 3.0. Если вам не нужны эти функции, попробуйте добавить metadata-complete="true"
к web.xml
.
Вот как это выглядит в заголовке web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app metadata-complete="true" id="WebApp_ID" version="3.0"...
Дополнительная информация здесь: Веб-настройка Tomcat и Servlet 3.0