Ответ 1
Tomcat-native - это версия Tomcat, которая использует высоко оптимизированную Apache Portable Runtime (APR), ту же структуру, которая поддерживает Apache HTTP сервер.
Когда я скомпилирую мое приложение spring mvc, я получаю это в выводе:
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_17\bin;......
Что именно я должен использовать в производстве, что это касается?
Tomcat-native - это версия Tomcat, которая использует высоко оптимизированную Apache Portable Runtime (APR), ту же структуру, которая поддерживает Apache HTTP сервер.
Взгляните на этот разговор http://www.infoq.com/presentations/Tuning-Tomcat-Mark-Thomas, где один из разработчиков Tomcat обсуждает, как настроить Tomcat - включая (например, NIO или APr). Сообщение, которое вы получаете о APR, относится к Tomcat Native
Я нашел post:
Вы можете спокойно проигнорировать это сообщение, если хотите. В основном это говорит вам, что необязательная общая библиотека (dll для Windows) не найдена. APR - это Apache Portable Runtime. Это родная (не-java) библиотека, которая может улучшить производительность Tomcat в определенных ситуациях. В Windows и Unix/Linux вам понадобится компилятор C для создания этой библиотеки.
Мой случай: просмотр того же сообщения INFO.
Centos 6.2 x86_64 Tomcat 8.0.14
Это исправило проблему для меня:
yum install tomcat-native
Я был очень знаком с Tomcat и столкнулся с той же проблемой; Я думаю, это потому, что я не остановил сервер должным образом.
В Eclipse на вкладке "Сервер" щелкните правой кнопкой мыши Tomcat и нажмите "Очистить". Перезагрузите сервер. Это сработало для меня.
Чтобы заставить APR
работать на сервере Windows:
установите родные библиотеки APR в каталог bin
Tomcat (для 64 bit
файлов используйте файлы- tcnative
в tcnative
x64
)
добавьте папку Tomcat bin
в Windows %path%
(это добавит openssl
к вашему пути)
Дополнительные замечания:
Вы не можете использовать keystore
Java с соединителем APR
, поскольку оно ожидает сертификаты в обычном формате Apache. Чтобы преобразовать сертификат pfx
я использовал:
openssl pkcs12 -in domain.pfx -clcerts -nokeys -out domain.cer
openssl pkcs12 -in domain.pfx -nocerts -nodes -out domain.key
openssl pkcs12 -in domain.pfx -out domain-ca.crt -nodes -nokeys -cacerts
Затем вы сможете раскомментировать/включить пример SSL
используя соединитель APR
в Tomcat server.xml