<< Переполнение разряда в top.mail.ru | На главную | Установка oracle client + php 5 + apache 2 >>

Настройка APR для Tomcat 5.5.25

Устанавливаем APR http://apr.apache.org/

Скачиваем последнюю версию со страницы http://apr.apache.org/download.cgi

Затем компилируем и устанавливаем:
./configure && make && make install

По умолчанию APR устанавливается в /usr/local/apr


Установка APR-util
Исходники находятся там же где и APR (http://apr.apache.org/download.cgi)
./configure --with-apr=/usr/local/apr/ && make && make install

Установка Tomcat-native
Разворачиваем файл tomcat-native.tgz (Из каталога /tomcat/bin/)

в нём выполняем:
./configure --with-apr=/usr/local/apr/ -with-java-home=/usr/local/jdk16
make
make install

Запуск Tomcat
После всего исправляем в catalina.sh:

CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"

И перезапускаем tomcat. Отныне томкат работает через низкоуровневые интерфейсы (т.е. быстрее) и в логе нет противного сообщения ;) )


PS: В итоге возникла ошибка при приёме пост-запросов. Замечено было при отправке средних файлов ( ~100kb) на сервер посредством http. Статистика пока набирается, но apr пришлось отключить.

Ссылки по теме ошибки:
http://www.velocityreviews.com/forums/t524769-tomcat-exception-thrown-whilst-processing-posted-parameters.html
и
issues.apache.org/bugzilla/show_bug.cgi?id=40960

Ошибка:
java.io.IOException: Socket read failed
        at org.apache.coyote.ajp.AjpAprProcessor.read(AjpAprProcessor.java:1037)
        at org.apache.coyote.ajp.AjpAprProcessor.readMessage(AjpAprProcessor.java:1158)
        at org.apache.coyote.ajp.AjpAprProcessor.receive(AjpAprProcessor.java:1090)
        at org.apache.coyote.ajp.AjpAprProcessor$SocketInputBuffer.doRead(AjpAprProcessor.java:1228)
        at org.apache.coyote.Request.doRead(Request.java:419)
        at org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:265)
        at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:370)
        at org.apache.catalina.connector.InputBuffer.readByte(InputBuffer.java:274)
        at org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:105)
        at javax.servlet.ServletInputStream.readLine(ServletInputStream.java:94)
        at org.apache.catalina.connector.CoyoteInputStream.readLine(CoyoteInputStream.java:199)
        at AM.servlet.util.MultipartInputStreamHandler.readLine(MultipartRequest
.java:628)



Комментировать Отправить TrackBack
На главную