아키텍처와 함께

블로그 이미지
by gregorio
  • Total hit
  • Today hit
  • Yesterday hit

Apache와 Tomcat AJP Protocol을 이용하여 연동하는 경우 Request Entity Too Large 오류가 발생할 때 다음과 같이 조치한다.


1. httpd.conf 파일 추가


LimitRequestLine 65536 

LimitRequestBody 0

LimitRequestFieldSize 65536 

LimitRequestFields 10000  


2. works.properties 파일 변경


worker.list=jkstatus,lb_dev


worker.template.type=ajp13

worker.template.lbfactor=1

worker.template.socket_timeout=300

worker.template.socket_connect_timeout=5000

worker.template.socket_keepalive=true

worker.template.connect_timeout=30000

worker.template.connection_pool_size=128

worker.template.connection_pool_minsize=32

worker.template.connection_pool_timeout=20


#########################################

## Worker

#########################################


worker.dev.reference=worker.template

worker.dev.host=10.255.116.84

worker.dev.port=8009

worker.dev.max_packet_size=65536 


#########################################

## Load Balancer

#########################################


worker.lb_dev.type=lb

worker.lb_dev.balance_workers=dev

worker.lb_dev.sticky_session=true


worker.jkstatus.type=status

#worker.jasper.max_packet_size=65536


 

Tomcat과 연동하는 workerdml max_packet_size를 65536으로 변경한다.


3. Tomcat의 server.xml 파일 수정


#JAVA_OPTS=" ${JAVA_OPTS} -Dorg.apache.coyote.ajp.MAX_PACKET_SIZE=65536"

 


MAX_PAKCET_SIZE를 JVM option에 추가하거나 


    <Connector URIEncoding="UTF-8" packetSize="65536" acceptCount="10" connectionTimeout="60000" enableLookups="false" maxPostSize="-1" maxThreads="256" tcpNoDelay="true" maxHttpHeaderSize="30000" port="8009" protocol="AJP/1.3" redirectPort="8443" />

 


server.xml 파일에 AJP Connector에 packetSize와 maxHttpHeaderSize를 설정한다.

AND

ARTICLE CATEGORY

분류 전체보기 (56)
Spring Framrwork (33)
Linux (1)
APM (1)
Java (8)
python (0)
ant (1)
chart (1)
OS (1)
tomcat (1)
apache (1)
database (0)

RECENT ARTICLE

RECENT COMMENT

CALENDAR

«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

ARCHIVE

LINK