Background Image
조회 수 54135 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

 

HP-UX Parameter Tuning on the CUBRID

소개: HP-UX시스템에서 CUBRID설정을 위한 가이드를 제공한다.

2009-03-31 고객지원팀 허지웅, CUBRID

적용 대상: HP-UX 11.11. HP-UX 11.23, CUBRID 7.3, CUBRID 2008

수정 전 확인 사항

우선 시스템 튜닝 전 OSKernel bit를 확인한다.

현재 시스템이 32bit 64bit인지를 아래와 같이 확인하고 현 시스템에 맞는 Kernel Parameter값을 수정하여야 한다.

getconf KERNEL_BITS

Kernel Parameter확인 방법은 아래 명령어를 수행하여 확인 할 수 있다.

/usr/sbin/kmtune –l

참고) SAM명령을 통하여 UI환경에서 Kernel Parameter확인 및 수정이 가능하다.

현재 시스템의 Kernel Parameter 의 설정치 및 설정할 수 있는 값을 보려면 아래와 같이 수행한다.

sysdef | more

주의: 시스템의 CUBRID이외의 응용프로그램과 같은 다른 프로세스가 존재하게 된다면 충분히 고려하여 Kernel Parameter를 수정하여야 한다.

I/O Parameter

다이내믹 버퍼 캐쉬의 최대값과 최소값의 설정

sar –b 명령으로 GBL_MEM_CACHE_HIT_PCT 에서 hit ratio를 확인할 수 있다.

기본: dbc_min_pct 5, dbc_max_pct 50

권장: dbc_min_pct: 5, dbc_max_pct: 20 or 10

주의: 메인 메모리의 사이즈가 8Gbyte 이하의 시스템은 dbc_max_pct 값을 20, 8Gbyte 이하일 경우 10으로 설정

참고) HP-UX의 파일시스템(JFS, HFS포함)BLOCK SIZE는 일반적으로 8Kbyte이므로 CUBRID 데이터베이스 생성 시 page size 8192(8Kbyte)로 설정하여 I/O 발생횟수를 줄일 수 있다.

System Tables Parameter

시스템에서 동시에 존재할 수 있는 프로세스의 개수 정의

권장: nproc = 4096 이상

시스템의 한 user id 당 가질 수 있는 최대 프로세스 개수 정의

기본: maxusers: 32, maxuprc: 75

권장: maxusers: nproc가 적당한 값이 되도록 설정한다.

     maxuprc: nproc - 2

참조) 실제 사용자 제한이 아닌 자원 할당을 제어하기 위한 매크로 Parameter이다. HP-UX 11.23 에서는 사용되지 않는 Parameter이다.

user id 당 가질 수 있는 최대 프로세스 수

시스템 전체적으로 동시에 열수 있는 File 의 개수 정의

권장: nfile = (15 * NPROC + 2048)

Process Thread Parameter

프로세스당 가질 수 있는 최대 thread 수 정의

CUBRID에서는 Multi-Threaded Server구조이며, client는 요청과 요청에 의한 처리를 위하여 2개의 Thread를 가진다. 따라서, CUBRID client수를 정의 하는 max_client Parameter 값이 50(default)일 경우 100개 이상(관리 Thread포함) Thread들이 생성된다.

기본: max_thread_proc = 64

권장: max_client *2 + (10~50) <= max_thread_proc <= nkthread

nkthread : 시스템이 가질 수 있는 최대 thread

(1) Thread application에 의해서 사용되는 thread 수의 최대치

(2) 시스템에서 1번의 application 이 동시에 수행되는 process 의 개수

(3) 기타 시스템 및 다른 application 을 위한 thread (nproc * 2) 가 적당

nkthread = (1) * (2) + (3)

권장: nkthread = nporc * 2 의 값

DATA, Text, Stack Segment Size Parameter

maxdsiz

       기본     32bit: 256 MB               64bit: 1 GB

       허용값   32 bit minimum: 0x40000 32 bit maximum: 0xfffff000 (4GB)

                 64 bit minimum: 0x40000 64 bit maximum: 0x3ffbfffffff (4TB)

권장: CUBRID Server프로세스의 크기 이상

maxssiz

       기본     0x800000 (8MB)             64 bit: 128b MB

       허용값   32 bit minimum: 0x40000 32 bit maximum: 0x17F00000 (383MB)

                 64 bit minimum: 0x40000 64 bit maximum: 0x40000000 (1GB)

권장: (max_client+(5~25)) * 2Mbyte

maxtsiz

       기본     32 bit: 256MB               64 bit: 1GB

       허용값   32 bit minimum: 0x40000 32 bit maximum: 0x40000000

                 64 bit minimum: 0x40000 64 bit maximum: 0x400000000000

권장: 기본값 이상

TCP/IP Parameter

WAS Connection을 포함하여 응용프로그램과 CUBRID(Broker CAS) TCP/IP연결에서 Parameter 튜닝으로 성공률을 높이고 성능을 향상시킬 수 있다.

TCP Parameters 확인방법

ndd –h supported

#ndd –get /dev/tcp  <Parameter 이름>

Connection 세션유지 및 종료

Connection 세션에서 설정시간 단위로 probe를 보내어 응답이 올 때 까지 기다린 후 응답이 없을 경우 재전송하여 세션이 유지되고 있는지 확인한다.

권장: tcp_keepalive_interval = 60000 è 1

tcp_keepalive_interval에 의해 probe를 보냈으나 응답이 없을 경우 tcp_ip_abort_interval의 설정 동안 응답이 없을 경우 세션을 종료시킨다.

권장: tcp_ip_abort_interval = 60000 è 1

Connection Drop

TCP세션이 서버에서는 이미 close을 하였고( FIN을 보내진 상태) client에서 FIN tcp_keepalive_detached_interval time안에 들어 오지 않을 때 keepalive probe packet이 발생된다.

이때 remote에서 응답이 없을 경우 normal keepalive probe timeout이 발생한다.

권장: tcp_keepalive_detached_interval = 60000 è 1

Idle fin_wait_2 connection 을 중지하고 불필요한 DB connection을 제거

기본: tcp_fin_wait2_timeout = 0 è Connection유지

권장: tcp_fin_wait2_timeout = 60000 è 1

Connection 이 종료될 때 TIME_WAIT 상태로 빠지게 되는데 얼마 동안 이 상태에 있을 것 인가 결정

기본: tcp_time_wait_interval = 6000 è 1

권장: tcp_time_wait_interval = 3000 è 30

  • ?
    남재우 2012.07.06 21:47

    HP에서 빌드시 컴파일 옵션을 조정할 필요가 있음. 옵션이 없으면 1G 까지만 할당 가능, 즉 maxdsize 의 설정까지 메모리 할당을 받지 못함.

    cc -Wl,+as,mpas -o mem mem.c


  1. CCI-API 에서 OID 사용 예제

    Date2009.07.01 CategoryCCI/DB API By남재우 Views24861
    Read More
  2. CCI-API 사용 예제

    Date2009.07.01 CategoryCCI/DB API By남재우 Views25103
    Read More
  3. CUBRID_기술문서_CUBRID PHP 함수 unisql_ 계열 cubrid_로 변환하기

    Date2009.06.23 CategoryPHP By남재우 Views22355
    Read More
  4. cubrid_fetch_all 함수 추가하기

    Date2009.06.16 CategoryPHP By남재우 Views20828
    Read More
  5. Oracle의 SYS_CONNECT_BY_PATH 함수 흉내내기

    Date2009.06.15 Category기타 ByCUBRID_DEV Views26526
    Read More
  6. CUBRID에서 log4sql을 사용하자

    Date2009.06.12 CategoryJava By정병주 Views44302
    Read More
  7. 오래 걸리는 질의 및 동일 시간에 수행 중인 질의 추출하기

    Date2009.05.26 Category기타 By손승일 Views20058
    Read More
  8. jsp용 jdbc 샘플입니다.

    Date2009.05.25 CategoryJava By시난 Views47606
    Read More
  9. iBATIS framework with CUBRID

    Date2009.05.19 CategoryJava By웁쓰 Views54546
    Read More
  10. CUBRID와 타DBMS의 python 사용방법 비교

    Date2009.05.19 Category기타 Bycubebridge Views29520
    Read More
  11. SQuirreL SQL Client에서 CUBRID 사용하기

    Date2009.04.18 CategoryJava ByPrototype Views34533
    Read More
  12. Power*Architect 에서 CUBRID 사용하기

    Date2009.04.18 CategoryJava ByPrototype Views23879
    Read More
  13. AquaDataStudio 에서 CUBRID 사용하기

    Date2009.04.18 CategoryJava ByPrototype Views23666
    Read More
  14. CUBRID Manager 사용시 로그인에 대하여

    Date2009.04.01 CategoryInstall Byadmin Views42038
    Read More
  15. Spring framework 사용 예제

    Date2009.04.01 CategoryJava Byadmin Views53119
    Read More
  16. connect by 구현 방법

    Date2009.04.01 Category기타 Byadmin Views52371
    Read More
  17. python 에서 broker_log_top 사용

    Date2009.04.01 Category기타 Byadmin Views17830
    Read More
  18. 오라클 개발자를 위한 CUBRID 개발 안내

    Date2009.04.01 Category기타 Byadmin Views49817
    Read More
  19. HP-UX에서 CUBRID 사용을 위한 kernel 설정값 조정

    Date2009.04.01 CategoryLinux Byadmin Views54135
    Read More
  20. cron을 이용한 백업 자동화

    Date2009.04.01 CategoryLinux Byadmin Views33118
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales