AJP는 웹서버 뒤에 있는 어플리케이션 서버로부터 웹서버로 들어오늘 요청을 위임할 수 있는 바이너리 프로토콜이다.
어플리케이션 서버로 핑을 할 수 있는 웹서버의 모니터링 기능을 지원한다.
웹 개발자들은 대체로 AJP를 여러 웹서버로 부터 여러개 어플리케이션 서버로의 로드 밸런스 구현에 이용한다. 세션들의 각각의 어플리케이션 서버 인스턴스의 이름을 갖는 라우팅 메카니즘을 사용하는 현재 어플리케이션 서버로 리다이렉트된다. 이 경우 어플리케이션 서버를 위한 리버스 프록시로 웹서버는 동작한다.
AJP는 mod_jk를 사용하는 Apache HTTP Server 1.x 와 Proxy AJP를 사용하는 Apache 2.x 와 mod_proxy와 proxy 밸런써 모듈에서 같이 실행된다. 아직 릴리즈 되지 않은 lighttpd 1.5 버전과 ngix, grizzly 2.1 그리고 iis에도 사용할 수 있다. 또 AJP는 Jetty 서블릿 컨테이너로 동작하는 Apache Tomcat servlet 컨테이너에도 사용할 수 있다.
http://en.wikipedia.org/wiki/Apache_JServ_Protocol
아래는 원문
The Apache JServ Protocol (AJP) is a binary protocol that can proxy inbound requests from a web server through to an application server that sits behind the web server.
It also supports some monitoring in that the web server can ping the application server. Web implementors typically use AJP in a load-balanced deployment where one or more front-end web servers feed requests into one or more application servers. Sessions are redirected to the correct application server using a routing mechanism wherein each application server instance gets a name (called a route). In this scenario the web server functions as a reverse proxy for the application server.
AJP runs in Apache HTTP Server 1.x using the mod_jk plugin and in Apache 2.x using the provided Proxy AJP, mod_proxy and proxy balancer modules together. Implementations exist for the not-yet-released lighttpd version 1.5,[1] nginx,[2] Grizzly 2.1,[3] and the Internet Information Server.[4]
Both the Apache Tomcat servlet container as well as the Jetty servlet container support AJP.