2023.07.03 ~ 2023.07.04


서론.

안녕하세요, 저는 [Team 광이나지]의 팀원 Yoda.jedi 입니다.

저희 팀은 이번 스프린트 주제인 "nGrinder를 활용하여 Apache server와 Nginx로 구성된 웹 서버의 성능 개선 및 스트레스 테스트"에 대해 고민하고 실험한 결과를 여러분과 공유하고자 합니다.

저희 팀은 단순히 웹 서버를 튜닝하고 스케일 업/아웃하는 것을 넘어, 부하테스트의 본질에 대해 고민하였습니다. 개발자로서 필요한 다양한 애플리케이션에 부하가 발생했을 때 효율적인 구성을 통해 애플리케이션의 성능을 개선하는 방법에 집중하였습니다.


본론.

저희 Team은 해당 case를 알아보기 위해, 다음과 같은 환경을 구성하였습니다.

    .
    ├── 전지영
    │    └── IP -> 192.168.70.70
    │          └── nGrinder controller -> 192.168.70.70:3333
    │
    ├── 김나연
    │    └── IP -> 192.168.70.56
    │           │── blog_server [test01] -> 192.168.70.70:7051
    │           │── blog_server [test02] -> 192.168.70.70:7052
    │           │── blog_server [test03] -> 192.168.70.70:7053
    │           │── blog_server [test04] -> 192.168.70.70:7054
    │           │── blog_server [test05] -> 192.168.70.70:7055
    │           └── blog_server [test06] -> 192.168.70.70:7056
    │
    ├── 김광현
    │    └── IP -> 192.168.70.61
    │          └── nGrinder agent-01 -> attached nGrinder controller
    │
    └── 이세한
         └── IP -> 192.168.70.48
               └── nGrinder agent-02 -> attached nGrinder controller

첫 번째 실험에서는 웹 서버 자체에 비교적 큰 컴퓨터 자원을 할당하였지만, nGrinder를 이용한 부하 테스트 진행 시 nGrinder agent 리소스, docker resource, network IO 등, 외부 변수가 너무 많았습니다.*첫번째 삽질 구경하러가기*

따라서 두번째 실험에서는 더 의미있는 결과를 얻고자 고민하였고, 저희 팀은 웹 서버를 마이크로 서버로 구성하여 실험을 진행하기로 결정 하였습니다. 이를 통해 웹 서버의 작은 단위로써의 성능과 확장성을 테스트하고, 부하 상황에서의 웹 서버의 동작을 보다 직관적으로 관찰할 수 있게 되었습니다.