티스토리 뷰

최근에, 회사에서 채굴관련 웹 서버를 운영하는데 stratum 서버에 다수의 채굴기가 연결 되면서 서버 트래픽이 급격히 증가하면서 다운되는 현상이 있었다.


동시 접속자와 네트워크 트래픽이 증가하면 어떻게 처리를 할까 검색을 하던 중 ulimit 이라는 아주 최고의 설정을 발견했다.


ulimit 이란?

프로세스의 소켓 최대 개수를 늘려 자원 한도를 설정하는 명령어


라고 한다.


ulimit -a


로 전체적인 설정 값들을 볼 수 있으며,


ulimit -n


으로 현재 설정되어있는 ulimit 값을 볼 수 있습니다.

(참고로, 우리가 원하는 정보는 ulimit -n 명령어로도 충분하다.)


sudo vim /etc/security/limits.conf


에서 다음과 같이 설정해주면 된다.



맨 마지막 부분에 *    -    nofile    100000

해당 값을 넣어주고 서버 자체를 reboot 해준다.


그리고 다시 ulimit -n으로 확인해보면 기본 값(ubuntu 기준) 1024 -> 100000 으로 변경된걸 확인해볼 수 있다.


가장 중요한게, 시스템 설정이라 한 번 잘 못 수정했다가 reboot을 해버렸다가 재부팅이 안되는 진짜 살면서 있어서는 안 될 현상이 생긴다.

해당 설정은 필자가 ubuntu 에서 설정하고 재부팅해서 성공적으로 적용한 내용이다.


설정을 하기 전에, 서버 스냅샷을 꼭 찍는 것을 추천한다. (aws는 AMI를 활용하면 되겠다.)




댓글
댓글쓰기 폼