프로그램개발/Linux(Apache.vim)

아파치 최적화 같은것도 개발자가 다 해야되나요?

크레도스 2018. 10. 15. 17:19

출처 : https://okky.kr/article/511016


질문

안녕하세요.

현재 운영중인 홈페이지가 있는데

한개 서버에 apache + tomcat으로 6개 정도 홈페이지 운영중입니다.


그런데 그 중 특정 홈페이지가 사람이 몰리는 때가있는데

거의 먹통수준이 되어버립니다.

IDC에서는 트래픽문제는 없다고합니다.


기존에는 이런 현상이 없었는데 최근에 와서 그러네요.

apache를 stop 시키는데도 굉장히 오래걸리며 (1분 정도)

다시 start를 하면 괜찮아지긴하는데 시간이 좀더 지나면 다시 느리지는 현상이 발생중입니다.


가능하다면 apache쪽 전문가를 섭외해서 최적화를 받고싶은데

그런 분들은 어떻게 모실수 있을까요?


저는 개발자지만 더 이상 어떤 문제인지를 파악하지 못하고있습니다.


도움 부탁드립니다. 감사합니다.  


답변

  • 우선 힘내시라고 말씀드리고 싶네요

    아파치 쪽의 문제일 확률은 매우 희박하다고 생각합니다.

    대부분 어플리케이션 서버에서 에서 문제가 생기는 것이 대부분입니다.

    어플리케이션 서버에서 생기는 문제를 정리해 보면

    가장 흔한게 파일시스템으로 부터 읽어오는데 걸리는 시간이 오래 걸리는 경우입니다. DB도 파일 시스템이라고 봐야겠죠.

    대부분 DB 조회의 문제라고 생각합니다.

    잘못된 DB 설계와 결과만 속도를 고려하지 않고 겨우 데이터만 나오게 만들어진 쿼리... 그중에 아주 심각한 부하를 차지하는 지뢰같은 놈들이 한둘 숨어 있고... 서버를 재가동하면 잘 돌다가 지뢰를 건들이면 전체적으로 응답 속도 느려지고 메모리, CPU 사용량 늘어나고 뭐 그런 시나리오죠

    혹시 외부 API를 많이 사용하는 경우 사용자 요청에서 그대로 태워서 외부 API를 호출 하는 경우가 있는지도 살펴봐야 합니다.

    스프링 + 마이바티스 같은 잘 만들어진 프레임워크롤 사용하지 않고 JDBC 리소스를 직접 핸들링 하는경우 리소스 반환을 하지 않고 시간이 계속 지나면서 응답이 느려지는 경우도 있습니다.

    그외에도 많은 경우가 있겠지만 어느경우든 서비스를 하면서 찾아내기는 참 쉽지 않습니다.


    보통 APM(Application Performance Management) 툴 같은 걸 이용하는게 문제 점을 가장 빠르게 알 수 있습니다.

    여러가지 좋은 제품들이 있지만 그중에 간단히 설치할 수 있고 상용 못지 않게 뛰어난 모니터링 기능을 가지고 있는 SCOUTER 라는 제품이 있습니다.

    국산이고 LG CNS에서 공개한 오픈소스 APM 입니다.

    https://www.popit.kr/scouter-open-source-apm/

    이런 글 한번 참고해 보시고

    https://www.facebook.com/groups/scouterapm/

    이곳도 도움이 되시길 빌겠습니다.


    건투를 빕니다.