Linux에서 Session Clustering 설정 할 경우 buffer size가 부족해서 time out 나는 경우가 있었습니다.
그래서 설정하는 방법에 대해 정리해 보았습니다.
step 1. 현재 설정 값 조회
# sysctl -a | grep mem
net.core.wmem_max = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.rmem_default = 262144
net.core.optmem_max = 20480
net.ipv4.igmp_max_memberships = 20
net.ipv4.tcp_mem = 193131 257511 386262
net.ipv4.tcp_wmem = 4096 16384 4194304
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.udp_mem = 193131 257511 386262
net.ipv4.udp_rmem_min = 4096
net.ipv4.udp_wmem_min = 4096
step 2. 값 변경
# vi /etc/sysctl.conf
.
.
.
.
#
# Do not accept IP source route packets (we are not a router)
#net.ipv4.conf.all.accept_source_route = 0
#net.ipv6.conf.all.accept_source_route = 0
#
# Log Martian Packets
#net.ipv4.conf.all.log_martians = 1
#
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 26214400
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
step 3. 값 적용
rocksea ~ # sysctl -p /etc/sysctl.conf
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 26214400
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
위와 같이 적용 된 것을 확인 해 볼 수 있습니다.
참고로
wmem은 send
rmem은receive
라고 보시면 됩니다.
자세한 옵션 설명은 아래 주소 참조
http://blog.naver.com/bycymon?Redirect=Log&logNo=100019747080