CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): mimosa (mimosa)
날 짜 (Date): 2002년 7월  8일 월요일 오전 10시 37분 37초
제 목(Title): Re: 동시접속 10만처리하기



 답변 감사드립니다.

 우선 Linux 시스템이 오픈 할 수 있는 최대 파일 수는

 /proc/sys/fs/file-max만 고쳐줘도 되고 
 include/linux/fs.h 에서 NR_OPEN, NR_FILE 을 고쳐줘도 
 된다고 합니다

 하나의 프로세스가 오픈할수 있는 파일의 수는 
 include/linux/limits.h 의 NR_OPEN, OPEN_MAX를 고쳐줘야 한답니다.

 참고로 ulimit -a 로 보았을때의 open files 는 하나의 프로세스가 
 열수있는 파일의 수이고 sysctl로 보았을때의 fs.file-max는 
 시스템이 열수있는 파일의 수랍니다


 저도 test시작전에 file open max가 문제가 되지 않을까해서
 /proc/sys/fs/file-max값을 10만 이상으로 늘려놓고 시작해서 
 이 부분은 괜찮지 않을까 생각하고 있습니다..

 현재 file-nr부분을 살펴보면 68763개의 파일이 열려있다고 나옵니다


 아 그리고 많은 분들이 poll을 추천하시더군요.

 그런데 man page를 보면 linux의 경우는 poll이 내부적으로 select를 
 이용해서 구현되어 있어 쓰기는 편할지 몰라도 내부적으로 부딪히는 
 한계는 비슷할 것 같습니다.

 select를 쓰는 경우 FD_SETSIZE가 1024로 제한되어 있어서 이걸 늘릴까하다
 FD passing으로 다른 프로세스로 보내서 1024개를 넘지 않도록 하였습니다.

 
----------------------------ooO0o-- * . ^ --o0Ooo---------------------------- 
  
   잠못들때 파도소리가 귓속에서 울릴때 

                     우리는 잃어버린 전설을 찾아 떠나야한다
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.