이런 형태의 자바서버에서의 thread갯수는. 어느정도
글쓴이: rokmn3309 / 작성시간: 월, 2004/06/14 - 11:54오전
안녕하세요.. 저번에 이와 관련된 구현 질문을 했었는데.. 이번에는 다른 질문을 또하게 되었습니다.
우선 서버의 하드웨어 사양은 메모리 2G에 xeon 2.8 듀얼입니다.
OS버전 및 GCC버전은 다음과 같습니다.
Linux version 2.6.6 (root@web1) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-20)) #1 SMP Thu May 27 03:50:14 JST 2004
자바버전은 다음과 같습니다.
java version "1.4.2" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2-b28) Java HotSpot(TM) Client VM (build 1.4.2-b28, mixed mode)
서비스구성형식은 다음과 같습니다.
A구간에서는 프로그램이 9090포트에서 대기하고 있다가 accpet를 요청하면 쓰레드를 생성합니다.
쓰레드의 생성후 소멸되기전까지 클라이언트와 연결을 계속 유지하고 있습니다.(지속적으로 연결)
특정 몇몇 쓰레드는 main_user 가 되고 나머지 해당 main_user의 sub_user 쓰레드가 됩니다.
+----------------( A )----------------+ parent--+--child(0)-main_user0 | +--child(1)-sub_user1 | +--child(2)-main_user1 | +--child(3)_sub_user0 : : : +--child(n-1)-sub_user0 | +--child(n)-main_user2
여기에 추가된것이 B구간인데 메인유저가 다른 9999포트로 요청이 들어오면은 처리를 해야합니다.
동시에 많은 유저가 붙지 않는다는 가정하에 서브 쓰레드를 추가로 생성하게 했습니다.
B구간은 메인유저가 선택여부에 따라 생성되는 형태입니다.
B구간은 php의 fsockopen으로 통신을 하며 데이터를 받고 나서는 종료하는 형태입니다.(잠깐 연결후 종료)
+----------------( A )----------------++----------------( B )------------------------+--------------( web )-----------+ parent--+--child(0)-main_user0----------sub_parent--+--sub_child(0)-sub_user0 ------------- web(0) | | +--child(1)-sub_user1 +--sub_child(1)-sub_user1 ------------- web(1) | | +--child(2)-sub_user0 +--sub_child(2)-sub_user2 ------------- web(2) | | +--child(3)_main_user1 +--sub_child(3)-sub_user3 ------------- web(3) : : : +--child(n-1)-sub_user0 | +--child(n)-main_user2
옆으로 크게해야 그림이 제대로 보이는군요.
이렇게 서비스가 된다고 했을때에 A구간에서의 쓰레드와 B구간에서의 쓰레드는 쓰레드 생성제한에 있어서 따로 계산되는건가요?
아니면은 전체 메모리에 쓰레드 갯수로 제한이 되는건가요?
다음은 ulimit -a로 봤을때입니다.
[root@chatpia root]# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited file size (blocks, -f) unlimited max locked memory (kbytes, -l) unlimited max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 16382 virtual memory (kbytes, -v) unlimited
자바의 쓰레드 스택을 조절하는 방법은 어떤게 있을까요?
Forums:
[url]http://www.caucho.com/resin-3.0/per
http://www.caucho.com/resin-3.0/performance/jvm-tuning.xtp
전에 저도 자바쓰레드를 마니 사용했더니 비슷한 문제가 있어서.
자바 옵션으로 해결했던 기억이나네요 참고하시길..
p.s 요즘 바쁘다보니 한동안뜸했네요 모두들 즐거운 하루 되시길..
' 형식이 내용을 규정한다. '
댓글 달기