티스토리 뷰

안녕하세요. 오늘은 APR 및 tomcat native library를 설정하는 방법에 대해서 포스팅 하겠습니다. APR이란 Apache Portable Runtime의 약자이며 자세한 내용은 아래 링크를 참조하면 됩니다.


참조 : https://tomcat.apache.org/tomcat-8.0-doc/apr.html



그리고, tomcat connector는 2개로 나뉘에 집니다. 하나는 AJP(Apache Jserv Protocol) Connetor이고 다른 하나는 HTTP Connector이며 간략한 설명은 아래와 같습니다.


 AJP Connector

 Apache와 같은 Web Server를 거쳐서 요청을 받는 경우 사용, HTTP보다 성능이 좋은 Binary 기반의 Protocol로 동작

 HTTP Connector

 표준 HTTP Protocol로 요청을 받는 경우 사용


여기에서 Connector의 역할은 외부에서 요청을 받는 Listener라고 할 수 있습니다.


 BIO Connector

 Java Blocking Api를 사용하여 구현합니다. pure java 

 APR Connector

 JNI(Java Native Interface) library를 사용하여 구현합니다. 

 *JNI는 다른 언어로 만들어진 Application과 상호 작용할 수 있는 Interface를 제공합니다.

 NIO Connector  

 Java Nio Api를 사용하여 구현합니다. 부분적으로 Non Blocking 방식입니다. pure java 


프로젝트를 진행하면서 톰켓 서버를 올리기 위해 tomcat 구동시 아래와 같은 로그를 볼 수 있습니다. APR 라이브러리를 찾지 못해서 HTTP BIO Connector를 실행한다는 의미이며, 사용상 문제는 없지만 좀 더 나은 성능을 제공하기 위해 APR Connector를 사용하면 됩니다.



그럼 APR를 컴파일 해서 설치를 하기 위해서 필요로 하는 패키지들이 있는데 아래의 명령어를 사용해서 설치 해줍니다.

yum -y install openssl-devel

yum -y groupinstall "Development Tools"

yum -y install expat-devel


꽤나 긴 시간을 투자하여 설치가 완료된 것을 확인하실 수 있습니다. 그리고 나서 cd /opt 명령어를 사용해 opt 디렉토리로 이동 후 다음과 같은 설치를 진행하도록 하겠습니다.


1. APR 다운로드 및 설치


1) wget http://mirror.navercorp.com/apache//apr/apr-1.6.3.tar.gz 명령어를 사용해 다운로드 받습니다.

2) tar xzf apr-1.6.3.tar.gz 명령어를 사용해 다운받은 파일의 압축을 풀어줍니다.

3) cd apr-1.6.3 명령어로 apr-1.6.3 디렉토리로 이동 후

4) ./configure

5) cp -arp libtool llibtoolT (./configure 시 해당 파일 오류가 날 경우)를 하고 다시 ./configure를 실행합니다.

6) make

7) make install


2. APR-util 다운로드 및 설치


1) wget http://mirror.navercorp.com/apache//apr/apr-util-1.6.1.tar.gz 명령어를 사용해서 다운로드 받습니다.

2) tar xzf apr-util-1.6.1.tar.gz 명령어를 사용해 압축을 풀어줍니다.

3) cd apr-util-1.6.1

4) ./configure --with-apr=/usr/local/apr

5) make

6) make install

 

3. /usr/local/apr/lib에 라이브러리 설치 및 확인


- Tomcat-native 설치

1) cd [CATALINA_HOME]/bin      <<< 여기서 CATALINA_HOME은 톰켓이 설치된 디렉토리를 의미합니다.

2) tar zxf tomcat-native.tar.gz

3) cd tomcat-native-1.2.16-src/native

4) ./configure --with-apr=/usr/local/apr --with-java-home=/opt/jdk1.8.0_161

5) make

6) make install


4. APR과 Tomcat의 통합

vi [CATALINA_HOME]/bin/catalina.sh 를 사용해서 아래와 같은 내용을 추가합니다.

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


vi /etc/profile 명령어를 사용해서 아래의 내용을 추가합니다.

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib


source /etc/profile 명령어를 사용해서 적용해줍니다. 그리고 나서 로그를 확인하면 다음과 같은 로그를 확인할 수 있습니다.



이것으로 APR 설치 및 tomcat library에 대한 포스팅을 마치도록 하겠습니다.