AJP?
AJP(Apache Jserv Protocol)
는 웹 서버 뒤에있는 웹 애플리케이션 서버(Web Application Server, WAS)으로 들어오는 요청을 웹 서버로 위임할 수 있는 바이너리 프로토콜이다. Apache HTTP Server(이하 Apache)는 80포트로 들어오는 요청 중, 서블릿을 필요로 하는 요청은 Apache Tomcat(이하 Tomcat)에 접속하여 처리한다.
Apache와 Tomcat을 같이 사용하는 이유는 아래의 글을 참고.
AJP
를 사용하기 위해서는 mod_jk
라는 모듈을 설치해야 한다. mod_jk
는 Tomcat의 일부로 배포되지만, Apache에도 설치를 해야 한다.
요청 처리 플로우
- 아파치 웹서버의 httpd.conf 에 톰캣 연동을 위한 설정을 추가하고 톰캣에서 처리할 요청을 지정함.
- 사용자의 브라우저는 아파치 웹서버(보통 80포트)에 접속해 요청.
- 아파치 웹서버는 사용자의 요청이 톰캣에서 처리하도록 지정된 요청인지 확인. 요청을 톰캣에서 처리해야 하는 경우 아파치 웹서버는 톰캣의 AJP포트(보통 8009포트)에 접속해 요청을 전달.
- 톰캣은 아파치 웹서버로부터 요청을 받아 처리한 후, 처리 결과를 아파치 웹서버에 되돌려줌.
- 아파치 웹서버는 톰캣으로부터 받은 처리 결과를 사용자에게 전송.
설정파일 수정
- workers.properties
Tomcat이 하나일 경우
1 |
|
Tomcat이 하나 이상일 경우
1 |
|