![[Linux]](../images/linux.gif)
Linux용 SIP 서블릿 튜닝
Linux 2.6 커널에서 실행할 때 SIP(Session Initiation Protocol) 서블릿에 대한 튜닝 팁을 사용합니다.
이 태스크 정보
부하 상태의 SIP(Session Initiation Protocol) 서블릿이 메시지를 재전송하거나 호출을
제거할 수 있습니다. UDP 소켓 큐가 채울 수 있습니다. 자세한 가비지 콜렉션 출력 검토 결과
아주 긴 가비지 콜렉션 시간이 있음을 나타낼 수 있습니다. 예를 들어 0.5 - 1.5초입니다. 이 문제점의 원인은
이더넷 드라이버, Linux® 운영 체제, WebSphere® Application Server 또는 해당 항목의 임의의 조합이 SIP 애플리케이션에 대해 튜닝되지 않았기 때문입니다.
다음 튜닝 레벨을 적용할 수 있습니다.
참고: 다음 권장사항은
Red Hat Enterprise Linux 4에서만 테스트되었으며 어떠한 묵시적 보증도 없이 현재 상태로
제공됩니다.
프로시저
- Linux 이더넷 드라이버를 튜닝하십시오.
Linux 이더넷 드라이버 튜닝은 가장 적합한 이더넷 드라이버를 선택하는 것부터 시작합니다. 예를 들어, HS20 블레이드 권장 드라이버는 tg3-3.43b 드라이버 이상입니다. 다음 쉘 명령은 Linux 커널 이더넷 드라이버를 튜닝하는 데 사용되었습니다.
설치된 이더넷 드라이버에 따라 다음 옵션 중 일부를 변경해야 합니다./sbin/ifconfig eth0 txqueuelen 2000 /sbin/ifconfig eth1 txqueuelen 2000 ethtool -s eth0 autoneg off speed 1000 duplex full ethtool -A eth0 autoneg off rx on tx on ethtool -C eth0 adaptive-rx off adaptive-tx off rx- usecs 20 rx-frames 5 tx-usecs 60 tx-frames 11 ethtool -G eth0 rx 511 rx-jumbo 255 tx 511
- Linux 커널을 튜닝하십시오. Linux 커널 튜닝은 다음 명령을 사용합니다.
이 구성은 지정된 애플리케이션에 대해 최적화되지 않았을 수 있으며 최상의 성능을 구현하기 위해 구성을 조정해야 합니다. 그러나 해당 값을 시작점으로 사용할 수는 있습니다.echo 16777216 > /proc/sys/net/core/rmem_max echo 2097152 > /proc/sys/net/core/rmem_default echo 16777216 > /proc/sys/net/core/wmem_max echo 2097152 > /proc/sys/net/core/wmem_default echo 10000000 > /proc/sys/net/core/optmem_max echo 4096 87380 16777216 > /proc/sys/net/ipv4/tcp_rmem echo 4096 87380 16777216 > /proc/sys/net/ipv4/tcp_wmem echo 8388608 8388608 8388608 > /proc/sys/net/ipv4/tcp_mem echo 400 > /proc/sys/net/unix/max_dgram_qlen echo 400 > /proc/sys/net/core/message_burst echo 2800 > /proc/sys/net/core/mod_cong echo 1000 > /proc/sys/net/core/lo_cong echo 200 > /proc/sys/net/core/no_cong echo 2900 > /proc/sys/net/core/no_cong_thresh echo 3000 > /proc/sys/net/core/netdev_max_backlog
- WebSphere® Application Server에 대한 SIP를 튜닝하십시오. WebSphere Application Server용 SIP 튜닝은 다음 단계에 따라 완료됩니다.
- SIP 서블릿 컨테이너에 대해 별도의 스레드 풀을 작성하십시오. 관리 콘솔에서 이 경로에 따르십시오.
- 서버 > 서버 유형 > WebSphere Application Sever > server_name을 클릭하십시오.
- 추가 특성 아래에서 스레드 풀 > 새로 작성을 클릭하십시오.
- 이름 필드에 SipContainer를 입력하십시오.
- 최소 크기 및 최대 크기 필드에 15를 입력하십시오. 이러한 값은 대부분의 애플리케이션에 대해 충분합니다.
- 확인을 클릭하십시오.
- SIP 서블릿 컨테이너에 대한 사용자 정의 특성을 작성하십시오. 관리 콘솔에서 이 경로에 따르십시오.
- 서버 > 서버 유형 > WebSphere Application Sever > server_name을 클릭하십시오.
- SIP 컨테이너를 클릭하십시오.
- 추가 특성 아래에서 사용자 정의 특성 > 새로 작성을 클릭하십시오.
- 이름 필드에 javax.sip.max.object.pool.size를 입력하십시오.
- 값 필드에 1000을 입력하십시오.
- 확인을 클릭하십시오.
- 이름 필드에 max.tu.pool.size를 입력하십시오.
- 값 필드에 1000을 입력하십시오.
- 확인을 클릭하십시오.
- 이름 필드에 com.ibm.sip.sm.lnm.size를 입력하십시오.
- 값 필드에 8을 입력하십시오.
- 확인을 클릭하십시오.
- UDP(User Datagram Protocol)가 SIP 통신량의 1차 전송인 경우 SIPUDP 채널에 대한 사용자 정의 특성을 작성하십시오. 관리 콘솔에서 이 경로에 따르십시오.
- 서버 > 서버 유형 > WebSphere Application Sever > server_name을 클릭하십시오.
- SIP 컨테이너 > 전송 체인 > SIPCInboundDefaultUDP > UDP 인바운드 채널(UDP1)을 클릭하십시오.
- 추가 특성 아래에서 사용자 정의 특성 > 새로 작성을 클릭하십시오.
- 이름 필드에 receiveBufferSizeSocket을 입력하십시오.
- 값 필드에 3000000을 입력하십시오.
- 확인을 클릭하십시오.
- 이름 필드에 sendBufferSizeSocket을 입력하십시오.
- 값 필드에 3000000을 입력하십시오.
- SIP 서블릿 컨테이너 일반 특성을 지정하십시오. 관리 콘솔에서 이 경로에 따르십시오.
- 서버 > 서버 유형 > WebSphere Application Sever > server_name을 클릭하십시오.
- 최대 애플리케이션 세션 값을 입력하십시오. 최대 애플리케이션 세션 값은 최대 호출 보유 시간 또는 세션 제한시간 x 호출 비율 x 안전 계수로 계산할 수 있습니다.
- 평균 기간당 최대 메시지 값을 입력하십시오. 평균 기간당 최대 메시지 값은 최대 호출 보유 시간 또는 세션 제한시간 x SIP 메시지 최대 비율 x 안전 계수로 계산할 수 있습니다.
- 최대 디스패치 큐 크기 값을 입력하십시오. 최대 디스패치 큐 크기 값은 SIP 메시지 최대 비율 x SIP 처리 최대 대기 시간 x 안전 계수로 계산할 수 있습니다.
- 스레드 풀을 새로 작성된 SIP 컨테이너 스레드 풀(드롭 다운 이름 "SipContainer")로 설정하십시오.
- JVM(Java Virtual Machine) 가비지 콜렉션 정책을 튜닝하십시오. 관리 콘솔에서 이 경로에 따르십시오.
- 서버 > 서버 유형 > WebSphere Application Sever > server_name을 클릭하십시오.
- 서버 인프라에서 Java 및 프로세스 관리 > 프로세스 정의를 클릭하십시오.
제어를 클릭하십시오.
- 추가 특성 아래에서 JVM(Java Virtual Machine)을 클릭하십시오.
- 일반 JVM 인수 필드에 다음 값을 한 행으로 입력하십시오. "-Xmn150m -Xgcpolicy:gencon -Xgc:scvNoAdaptiveTenure,scvTenureAge=1,stdGlobalCompactToSatisfyAllocate -Xcompactexplicitgc -XX:MaxDirectMemorySize=256000000".
우수 사례:
- 초기 힙 크기 및 최대 힙 크기 필드에 값 1500MB를 추가할 수 있습니다.
- 성능 테스트 또는 튜닝 조작 동안 자세한 가비지 콜렉션 옵션을 사용 가능하게 설정하십시오.
- 애플리케이션에서 크기가 64KB보다 큰 오브젝트를 할당하는 경우 힙에 대형 오브젝트 영역(LOA)을 예약하는 것이 좋습니다. JVM 인수 -Xloaminimum0.xy를 추가하여 수행하며 여기서, xy는 대형 오브젝트용으로 예약할 힙의 백분율을 나타냅니다. JVM 인수에 대한 자세한 정보는 Java 진단 안내서 6을 참조하십시오.
- SIP 서블릿 컨테이너에 대해 별도의 스레드 풀을 작성하십시오. 관리 콘솔에서 이 경로에 따르십시오.


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsip_tunelinux
파일 이름:tsip_tunelinux.html