본문 바로가기

OS/Linux

서버 접속자 수 확인해보기

갑자기 서버에 부하가 걸려 서버 모니터링을 다양하게 해보다가 포트를 모니터링해서 접속자 수 체크하는 방법이 있어서 남겨본다.


netstat 명령어를 이용한 방법으로 특정포트에 접근한 숫자를 확인하여 접속자 수를 가늠해 볼 수 있다. 기본 명령어는 다음과 같다.

netstat -anp


모든 포트 정보를 표시하고 address는 숫자로만 표기된다. 여기서 일단 웹 서버 접속자 수를 가늠해보려고 하니 80포트와 443 포트를 확인해보자.

netstat -anp | grep -E ":80 |:443 "


실행 결과를 보면 원하지 않는 포트도 보일 것이다. 숫자 뒤에 띄어쓰기 한 것은 8009 같은 다른 포트 검색을 제거하기 위해 한 것이다. 여기서 다시 한가지 걸러낼려고 하는데 ESTABLISHED 상태인 것만 걸러낼 것이다.

ESTABLISHED는 서로 연결된 상태를 의미한다.

netstat -anp | grep -E ":80 |:443 " | grep ESTABLISHED


이제 라인수를 구하면 접속자 수가 되겠다.

netstat -anp | grep -E ":80 |:443 " | grep ESTABLISHED | wc -l


서버 셋팅을 수정하고 비교하니 숫자가 확실히 줄어들었다. thread 수를 늘리고 나니 대략 접속자 수가 10명이상 차이가 난다. 그리고 처리 속도도 빨라진듯 하다. 처리가 빨라저서인지 정확히는 알 수 없으나 부하가 어느정도 걸리는지 간단히 확인하는 것으로는 충분해 보인다.