SlideShare une entreprise Scribd logo
1  sur  53
제13회 한국자바개발자 컨퍼런스




네이버 메인의 NGiNX 테스팅기


     송형근, 윤준호
       NHN



                          1
제13회 한국자바개발자 컨퍼런스



1. 네이버 메인의 NGiNX 테스트 사례!
  송형근 - hyunkeun.song@nhn.com
     자칭 훈남 개발자
        NHN, 메인 서비스 개발
        손노리, 게임 클라이언트 개발




2. nGrinder 로 성능테스트 끝장내보자!
  윤준호 - junoyoon@nhn.com
     자칭 슈퍼 개발자
      NHN, SW 테스트 / 검증 자동화
      nGrinder 프로젝트 Lead

                                              2
제13회 한국자바개발자 컨퍼런스




네이버 사용하시나요?

     개발자라면
     구글이지!




    구글 티셔츠 정도
    걸쳐줘야 간지지



                              3
제13회 한국자바개발자 컨퍼런스




일 PV 2억 이상




                     4
제13회 한국자바개발자 컨퍼런스




겉모습은 참 화려하죠?

내부의 모습은 어떨까요?




                              5
제13회 한국자바개발자 컨퍼런스



노후 된 엔진 ...그리고?




    APACHE




                           6
제13회 한국자바개발자 컨퍼런스




때는 바야흐로, 2009년 7월…

좀비들의 빈집 털이 습격…



           DDoS Attack




                                   7
제13회 한국자바개발자 컨퍼런스




              8
제13회 한국자바개발자 컨퍼런스




         웹 서버의 근본적인
          취약점은 어쩔?




        웹 서버를 바꿔보자…
높으신 분


                          9
제13회 한국자바개발자 컨퍼런스



짜잔~ 최신 엔진으로 튜닝!!




                         10
제13회 한국자바개발자 컨퍼런스



                 에이, 그냥
               엔진만 바꿔 뀌면
                되는 거 아냐?




 누굴 그냥
동네 구멍가게
서비스로 보나..


                           11
제13회 한국자바개발자 컨퍼런스




24시간 365일 무정지 서비스

     서버 점검 시간 따윈 없음.

     장애 발생하면 절대 절대 안 된다!


    아주 디테일하게 검증이 필요한 시스템


                               12
제13회 한국자바개발자 컨퍼런스



                  진행 과정

       모듈간 호환X



                    검증작업                 전체
        NGINX 용                 일부 서버
도입결정                (기능, 성능             서비스
        모듈 개발                    적용
                     테스트)                적용




       프로젝트 팀에 합류
                                              13
제13회 한국자바개발자 컨퍼런스



네이버 메인 페이지는 이렇게 만들어진다




   정적 컨텐츠 + 동적 컨텐츠

                            14
제13회 한국자바개발자 컨퍼런스



웹서버 모듈을 이용한 동적 컨텐츠 생성

                           컨텐츠
                           데이터

    index.html



             Web Server
                           사용자
                           데이터


                 웹 서버 모듈



                                        15
제13회 한국자바개발자 컨퍼런스



              웹서버 모듈의 다른 기능은?


- 로그인 인증 처리
                                 캐쉬
- 컨텐츠 캐싱
                                 랜덤
- 백엔드 시스템 연동
                                 연동
- 쿠키, 헤더 처리
- 랜덤 노출 처리                 웹서버
- ...




           웹 서버 모듈은 네이버 메인의 핵심!!
제13회 한국자바개발자 컨퍼런스



                    웹 서버 모듈

• 웹 서버에서 제공하지 않는, 특정 기능 추가
 httpd.conf

 LoadModule proxy_module mod_proxy.so


 Q : 보통은 WAS 를 많이 사용하지 않나?
 A : WAS 로도, 동일 기능 구현 가능 (단지, 구성 방식의 차이일 뿐..)



              고성능? WAS(X), 웹 서버 모듈(O)

                                               17
제13회 한국자바개발자 컨퍼런스



            웹 서버 검증 대상?

• 기본적으로 NGINX 웹서버 자체의 기능 신뢰.

• 네이버 메인에서는, 웹 서버 모듈(15개)을 개발하여 사용

• 검증 대상은 우리가 직접 만든 모듈의 안정성




          NGiNX 모듈, 주요 검증 대상

                                      18
제13회 한국자바개발자 컨퍼런스



기존에는 어떻게 테스트를 했을까?




          결과 코드 200?




                          19
제13회 한국자바개발자 컨퍼런스



   기존 테스트 방법? 내부 리소스 활용 모듈




                 확장모듈
        WGET
                          정상적인
                         응답만을 제공


클라이언트          웹 서버



                                    20
제13회 한국자바개발자 컨퍼런스



   기존 테스트 방법? 외부 리소스 활용 모듈


                                       정상응답만을
                                        제공
                 확장모듈
        WGET



                      TCP, UDP, HTTP


클라이언트          웹 서버               백엔드 서버



                                                21
제13회 한국자바개발자 컨퍼런스



            [이슈1] 내부 시스템 예외 상황


• Segmentation Fault ?

• 잘못된 메모리 주소 접근으로 인한 오류 : 비정상 종료

    NULL 로 설정된 영역을 접근

    할당 받은 메모리 공간을 넘어서는 영역에 접근했을 경우




                                       22
제13회 한국자바개발자 컨퍼런스



발생 가능한 케이스는? 파라미터, 리소스 오류


  2012-13월의                13
   계좌 조회?                 월??




              데이터 파일 요청




                                    23
제13회 한국자바개발자 컨퍼런스



                 NGiNX 모듈 테스트 Flow

1. 최신 NGiNX 모듈 소스 빌드
                           수작업 NO !!!!
2. NGiNX 서버 실행


3. HTTP 호출(WGET 등)


4. 결과 검증


 근데 NGiNX 는 C 언어 아닌가요? 갑자기 JUnit은?

      어짜피 HTTP (윈도우에서 테스트할래, 리눅스에서 할래?)

                                            24
제13회 한국자바개발자 컨퍼런스



                                 테스트 코드 예제

public void 정상_응답_테스트(){
     // Client 측 요청 (HTTP)
    Map<String,Object> headers = new HashMap();
    headers.put( “cookie”, “…” );
    page = new WebClient().getPage("http://localhost/deposit?mon=13", headers );


    // 검증단계 : 기대했던 결과값이 들어왔는지 검증
    assertThat( page.getStatusCode(), is(200) );
    assertThat( page.getContent().containts(expectedContent ), is(true));
}



                                                                                   25
제13회 한국자바개발자 컨퍼런스



        [이슈2] 백엔드 시스템 예외 상황




백엔드 시스템이 다운 되어도,

우리는 정상적으로 서비스 가능해?

테스트 해볼 수 있어?




                         높으신분 왈

                                   26
제13회 한국자바개발자 컨퍼런스



 백엔드 서비스가 정상적으로 동작하지 않는 상황?




천재 지변     시스템 오류            해킹


                                 27
제13회 한국자바개발자 컨퍼런스



      발생 가능한 케이스는? 네트워크 관련 오류

요청 : 계좌 이체 내용 조회, 기대 응답 : { 날짜, 금액, 계좌번호, 잔액 }


       1월 계좌이체 조회
                              계좌조회       잘못된 데이터
         궁금하면 500원            시스템



             1월 계좌이체 조회                   응답 없음




                   1월 계좌이체 조회              전체 응답
                      01/23, 500원          받지 못함

                                                  28
제13회 한국자바개발자 컨퍼런스




그럼 어떻게 테스트 하지?




                        29
제13회 한국자바개발자 컨퍼런스




                 이번 테스트는요,
                 0.1 초안에 강제로
                TCP 연결을 끊어주세요




-_- 뭥미.. (멘붕)


                   백엔드 시스템 담당자
                                 30
제13회 한국자바개발자 컨퍼런스




랜선을 뽑아야 하나?   아님 두꺼비집이라도 내려?




                              31
제13회 한국자바개발자 컨퍼런스


                     백엔드 서비스의 테스트 환경 구성

                                                     우리 시스템은 절대로 다운 시킬
                                                     수 없습니다. 시키기만 해봐?!!




  테스트를 위한 NGiNX 모듈
  수정은 못합니다.


                       환경적으로 제어할 수 있는 방법 고민?
                           결론은 MOCKING !!

Mocking : mock objects are simulated objects that mimic the behavior of real objects in controlled
ways, wikipedia                                                                                    32
제13회 한국자바개발자 컨퍼런스



       백엔드 시스템 Mocking 테스트 환경 구성
  Localhost


              1              2
                                 X


                   NGiNX
   클라이언트                                 백엔드 시스템

Request 검증
Response 생성                      Redirectio
                                     n
                  Mock 서비스


 Redirection, Mock : 외부의 환경 변화 없이, 원하는 테스트 가능
                                                   33
제13회 한국자바개발자 컨퍼런스



                           Redirection

1. 도메인으로 접속 시 : hosts 설정

  외부서비스              Host IP                 도메인주소

   서비스 #1           127.0.0.1     www.xxx.com


2. IP 로 접속 시 : iptables 설정 (리눅스 환경)

외부서비스                      iptables 를 사용한 IP 포워딩 이용

          iptables -t nat -A OUTPUT -p tcp -d 서버주소 -j DNAT --to-destination
 서비스 #2
          127.0.0.1:10000




                                                                              34
제13회 한국자바개발자 컨퍼런스



백엔드 시스템 Mocking 테스트 Flow



HTTP 요청              Redirection
              (N)




   클라이언트(C)    Mock 서비스(M)




                                   35
제13회 한국자바개발자 컨퍼런스



                          정상 테스트 코드 예제 (HTTP)
public void before(){
    createServer( HTTP_PROTOCOL, PORT );
    startServer();
    // Server 측 결과 생성
    server.setHandler( new AbstractHandler(){
          public void handle( HttpServletRequest req, HttpServletResponse resp ){
            ... // NGiNX Request 메시지 검증 + Response 메시지 전송
    });
}
public void 정상_응답_테스트(){                                                       N
    page = new WebClient().getPage("http://localhost/” );
}                                                                       C           M
                                                                                    36
제13회 한국자바개발자 컨퍼런스



                        비정상 예외 테스트 코드 예제 (HTTP)
public void before() throws Exception {
    1 createServer( HTTP_PROTOCOL, PORT );
      startServer();


    2 // Server 측 결과 생성
      server.setHandler( new AbstractHandler(){
            public void handle( HttpServletRequest req, HttpServletResponse resp ){
                resp.write( “잘못된 데이터지롱” );
                 stopServer();
            }
      });
}
                                                                                      37
제13회 한국자바개발자 컨퍼런스



                            테스트 코드 예제 (TCP, UDP)

// TCP, IoAcceptor 객체 이용
server.setHandler(new IoHandlerAdapter() {
public void processStreamIo(IoSession session, InputStream in, OutputStream out) {
              out.print ( responseMsg );
          }
});
// UDP
server.setHandler(new StreamIoHandler() {
      public void messageReceived(IoSession ssn, Object msg){
              ssn.write( … );
      }
});
제13회 한국자바개발자 컨퍼런스




기존 방법으로는 절대 검출 못했을



       23개 오류 발견
            개당 1억 : 23억 절감


                              39
제13회 한국자바개발자 컨퍼런스




백엔드 시스템 예외상황 테스트


            Redirection + Mocking




                               40
제13회 한국자바개발자 컨퍼런스



                 NGiNX 적용 이후


NGiNX 고가용성 확보 : TPS 약 3배 증가



서버 대수 : 1/3 수준으로 감소




NGiNX 장애 : 0 건




                                            41
제13회 한국자바개발자 컨퍼런스




2. nGrinder 로 성능테스트 끝장내보자!




                                   42
제13회 한국자바개발자 컨퍼런스




           성능 테스트?


 스트레스 테스트            로드 테스트

  로드 상황에서            로드 상황에서
크래시 등의 문제점 확인        성능 특성 파악




                                43
제13회 한국자바개발자 컨퍼런스



                     로드 테스트


 초당   2500
처리량
      2000


      1500
                                                 Apache

      1000                                       Nginx
                                                 Nginx-caching
       500


         0
             1   2   5   10   50   100   200   동시사용자 #
                                               (Think Time 없을 때)

                                                                 44
제13회 한국자바개발자 컨퍼런스



스트레스 테스트




           부적절한 커넥션 풀?
           불충분한 쓰레드 풀?
           메모리 릭?
           리소스 릭?
           비효율적인 코드?




                       45
제13회 한국자바개발자 컨퍼런스




 NHN에서는 어떻게 로드를 주나요?



  ApacheBench? LoadRunner?


NGiNX 같은 고성능 서버에는 부적절…


                                46
제13회 한국자바개발자 컨퍼런스



          분산 테스트?


         제어              부하


         스크
         립트


컨트롤러                          테스트 대상 서버

              로드 생성기



무제한 로드 부여 가능 / NGiNX 테스트에 적합
                                          47
제13회 한국자바개발자 컨퍼런스




그냥 하나 만들고 만다.
                       48
제13회 한국자바개발자 컨퍼런스



nGrinder   since 2010




                             49
제13회 한국자바개발자 컨퍼런스


데모 > 테스트 흐름




    스크립트 작성          테스트 설정 (vuser 개수등)
          상세 결과 보기




    결과 리포트                테스트 진행
                                      50
제13회 한국자바개발자 컨퍼런스




언제든 원하는 시점에 테스트 수행


   테스트 준비시간 0분


  네트워크 과점유 자동 검출




 월간 2000건 성능 테스트 실행

                            51
제13회 한국자바개발자 컨퍼런스




http://www.nhnopensource.org/ngrinder/
제13회 한국자바개발자 컨퍼런스




Thank You.




                      53

Contenu connexe

Tendances

[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법Open Source Consulting
 
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기SeungYong Oh
 
AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)
AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)
AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)Brian Hong
 
Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetesSangSun Park
 
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)충섭 김
 
AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2
AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2
AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2Amazon Web Services Korea
 
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdfssuserf8b8bd1
 
AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3
AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3 AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3
AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3 Amazon Web Services Korea
 
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?VMware Tanzu Korea
 
Advanced nGrinder
Advanced nGrinderAdvanced nGrinder
Advanced nGrinderJunHo Yoon
 
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축Ji-Woong Choi
 
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개if kakao
 
파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)Heungsub Lee
 
임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013devCAT Studio, NEXON
 
AWSKRUG-33번째-세션1.pdf
AWSKRUG-33번째-세션1.pdfAWSKRUG-33번째-세션1.pdf
AWSKRUG-33번째-세션1.pdfSeoyulYoon
 
서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해중선 곽
 
AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021Amazon Web Services Korea
 
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) 마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) Amazon Web Services Korea
 
웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우IMQA
 

Tendances (20)

[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
 
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
 
AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)
AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)
AWS와 함께 한 쿠키런 서버 Re-architecting 사례 (Gaming on AWS)
 
Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetes
 
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
 
AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2
AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2
AWS로 게임의 공통 기능 개발하기! - 채민관, 김민석, 한준식 :: AWS Game Master 온라인 세미나 #2
 
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
(발표자료) CentOS EOL에 따른 대응 OS 검토 및 적용 방안.pdf
 
AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3
AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3 AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3
AWS로 게임 기반 다지기 - 김병수, 박진성 :: AWS Game Master 온라인 세미나 #3
 
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?
MSA 전략 1: 마이크로서비스, 어떻게 디자인 할 것인가?
 
Advanced nGrinder
Advanced nGrinderAdvanced nGrinder
Advanced nGrinder
 
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
 
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
 
Community Openstack 구축 사례
Community Openstack 구축 사례Community Openstack 구축 사례
Community Openstack 구축 사례
 
파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)
 
임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013임태현, 게임 서버 디자인 가이드, NDC2013
임태현, 게임 서버 디자인 가이드, NDC2013
 
AWSKRUG-33번째-세션1.pdf
AWSKRUG-33번째-세션1.pdfAWSKRUG-33번째-세션1.pdf
AWSKRUG-33번째-세션1.pdf
 
서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해서버 성능에 대한 정의와 이해
서버 성능에 대한 정의와 이해
 
AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
AWS를 활용해서 글로벌 게임 런칭하기 - 박진성 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
 
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) 마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
 
웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우웹서버 부하테스트 실전 노하우
웹서버 부하테스트 실전 노하우
 

En vedette

Alta perfomance de aplicações PHP com Nginx
Alta perfomance de aplicações PHP com NginxAlta perfomance de aplicações PHP com Nginx
Alta perfomance de aplicações PHP com NginxThiago Paes
 
아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼
아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼
아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼Hyuk Kwon
 
The Evolution of Open Source Databases
The Evolution of Open Source DatabasesThe Evolution of Open Source Databases
The Evolution of Open Source DatabasesIvan Zoratti
 
PHP를 위한 NginX(엔진엑스) 시작과 설정
PHP를 위한 NginX(엔진엑스) 시작과 설정PHP를 위한 NginX(엔진엑스) 시작과 설정
PHP를 위한 NginX(엔진엑스) 시작과 설정Jin wook
 
practical perf testing - d2startup
practical perf testing - d2startuppractical perf testing - d2startup
practical perf testing - d2startupJunHo Yoon
 
코딩에는 좋은 노트북이 필요 없다
코딩에는 좋은 노트북이 필요 없다코딩에는 좋은 노트북이 필요 없다
코딩에는 좋은 노트북이 필요 없다Han Sung Kim
 
WordPress + NGINX Best Practices with EasyEngine
WordPress + NGINX Best Practices with EasyEngineWordPress + NGINX Best Practices with EasyEngine
WordPress + NGINX Best Practices with EasyEngineNGINX, Inc.
 
Universal Rendering
Universal RenderingUniversal Rendering
Universal RenderingTaegon Kim
 
Slipp clojure-1212
Slipp clojure-1212Slipp clojure-1212
Slipp clojure-1212완수 양
 
Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Jinsoo Jung
 
맛만 보자 Undertow
맛만 보자 Undertow맛만 보자 Undertow
맛만 보자 Undertowjbugkorea
 
AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)
AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)
AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)Hyunjin Lee
 
[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규ChangKyu Song
 
영속성 컨텍스트로 보는 JPA
영속성 컨텍스트로 보는 JPA영속성 컨텍스트로 보는 JPA
영속성 컨텍스트로 보는 JPA경원 이
 
Scala로의 산책
Scala로의 산책Scala로의 산책
Scala로의 산책Youmi Bae
 
Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거
Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거
Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거Javajigi Jaesung
 
Network 초보자를 위한 Netty
Network 초보자를 위한 NettyNetwork 초보자를 위한 Netty
Network 초보자를 위한 NettyChoulhyouc Lee
 
확률 통계 (파이썬)
확률 통계 (파이썬)확률 통계 (파이썬)
확률 통계 (파이썬)Yong Joon Moon
 

En vedette (20)

Alta perfomance de aplicações PHP com Nginx
Alta perfomance de aplicações PHP com NginxAlta perfomance de aplicações PHP com Nginx
Alta perfomance de aplicações PHP com Nginx
 
아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼
아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼
아마존 AWS 클라우드에서 LEMP(NginX) stack 설치 매뉴얼
 
The Evolution of Open Source Databases
The Evolution of Open Source DatabasesThe Evolution of Open Source Databases
The Evolution of Open Source Databases
 
PHP를 위한 NginX(엔진엑스) 시작과 설정
PHP를 위한 NginX(엔진엑스) 시작과 설정PHP를 위한 NginX(엔진엑스) 시작과 설정
PHP를 위한 NginX(엔진엑스) 시작과 설정
 
practical perf testing - d2startup
practical perf testing - d2startuppractical perf testing - d2startup
practical perf testing - d2startup
 
코딩에는 좋은 노트북이 필요 없다
코딩에는 좋은 노트북이 필요 없다코딩에는 좋은 노트북이 필요 없다
코딩에는 좋은 노트북이 필요 없다
 
WordPress + NGINX Best Practices with EasyEngine
WordPress + NGINX Best Practices with EasyEngineWordPress + NGINX Best Practices with EasyEngine
WordPress + NGINX Best Practices with EasyEngine
 
Universal Rendering
Universal RenderingUniversal Rendering
Universal Rendering
 
DNS in the Cloud
DNS in the CloudDNS in the Cloud
DNS in the Cloud
 
Slipp clojure-1212
Slipp clojure-1212Slipp clojure-1212
Slipp clojure-1212
 
Slipp 발표 자료 20151212
Slipp 발표 자료 20151212Slipp 발표 자료 20151212
Slipp 발표 자료 20151212
 
맛만 보자 Undertow
맛만 보자 Undertow맛만 보자 Undertow
맛만 보자 Undertow
 
AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)
AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)
AWS Cloud와 Wowza Cloud를 활용한 Media Platform 만들기(한동대 특강)
 
[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규
 
영속성 컨텍스트로 보는 JPA
영속성 컨텍스트로 보는 JPA영속성 컨텍스트로 보는 JPA
영속성 컨텍스트로 보는 JPA
 
Scala로의 산책
Scala로의 산책Scala로의 산책
Scala로의 산책
 
Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거
Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거
Scala, Spring-Boot, JPA의 불편하면서도 즐거운 동거
 
Slipp 발표 - GO
Slipp 발표 - GOSlipp 발표 - GO
Slipp 발표 - GO
 
Network 초보자를 위한 Netty
Network 초보자를 위한 NettyNetwork 초보자를 위한 Netty
Network 초보자를 위한 Netty
 
확률 통계 (파이썬)
확률 통계 (파이썬)확률 통계 (파이썬)
확률 통계 (파이썬)
 

Similaire à Nginx Testing in NAVER

제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발Terry Cho
 
하드웨어 스타트업의 소프트웨어 이야기
하드웨어 스타트업의 소프트웨어 이야기하드웨어 스타트업의 소프트웨어 이야기
하드웨어 스타트업의 소프트웨어 이야기Mijeong Park
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3uEngine Solutions
 
01.개발환경 교육교재
01.개발환경 교육교재01.개발환경 교육교재
01.개발환경 교육교재Hankyo
 
[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화
[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화
[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화흥래 김
 
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)SangIn Choung
 
Rapid Development
Rapid DevelopmentRapid Development
Rapid Development기룡 남
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)수보 김
 
[NDC17] 왓 스튜디오 서비스파트
[NDC17] 왓 스튜디오 서비스파트[NDC17] 왓 스튜디오 서비스파트
[NDC17] 왓 스튜디오 서비스파트Chanwoong Kim
 
Oracle Container Cloud Service & Docker Overview
Oracle Container Cloud Service & Docker OverviewOracle Container Cloud Service & Docker Overview
Oracle Container Cloud Service & Docker OverviewTaewan Kim
 
Kubernetes를 통한 laravel 개발프로세스 개선하기
Kubernetes를 통한 laravel 개발프로세스 개선하기Kubernetes를 통한 laravel 개발프로세스 개선하기
Kubernetes를 통한 laravel 개발프로세스 개선하기Changyeop Kim
 
designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...uEngine Solutions
 
클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기YoungSu Son
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos uEngine Solutions
 
엔지니어링관점에서 테스트 개선방안 질의 응답
엔지니어링관점에서 테스트 개선방안 질의 응답엔지니어링관점에서 테스트 개선방안 질의 응답
엔지니어링관점에서 테스트 개선방안 질의 응답SangIn Choung
 
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetesNAVER D2
 
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템강 민우
 
글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례
글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례
글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례if kakao
 
Openshift 활용을 위한 Application의 준비, Cloud Native
Openshift 활용을 위한 Application의 준비, Cloud NativeOpenshift 활용을 위한 Application의 준비, Cloud Native
Openshift 활용을 위한 Application의 준비, Cloud Nativerockplace
 

Similaire à Nginx Testing in NAVER (20)

제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발
 
하드웨어 스타트업의 소프트웨어 이야기
하드웨어 스타트업의 소프트웨어 이야기하드웨어 스타트업의 소프트웨어 이야기
하드웨어 스타트업의 소프트웨어 이야기
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3
 
01.개발환경 교육교재
01.개발환경 교육교재01.개발환경 교육교재
01.개발환경 교육교재
 
[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화
[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화
[JCO 컨퍼런스] 웹사이트 Front-End 성능 최적화
 
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
(편집-테스트카페 발표자료) 1인 QA 수행사례로 발표한 자료 (W프로젝트 사례)
 
Rapid Development
Rapid DevelopmentRapid Development
Rapid Development
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)
 
[NDC17] 왓 스튜디오 서비스파트
[NDC17] 왓 스튜디오 서비스파트[NDC17] 왓 스튜디오 서비스파트
[NDC17] 왓 스튜디오 서비스파트
 
Oracle Container Cloud Service & Docker Overview
Oracle Container Cloud Service & Docker OverviewOracle Container Cloud Service & Docker Overview
Oracle Container Cloud Service & Docker Overview
 
201702-Oracle Container Cloud Service
201702-Oracle Container Cloud Service201702-Oracle Container Cloud Service
201702-Oracle Container Cloud Service
 
Kubernetes를 통한 laravel 개발프로세스 개선하기
Kubernetes를 통한 laravel 개발프로세스 개선하기Kubernetes를 통한 laravel 개발프로세스 개선하기
Kubernetes를 통한 laravel 개발프로세스 개선하기
 
designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...
 
클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기클라우드 환경에서 알아야할 성능 이야기
클라우드 환경에서 알아야할 성능 이야기
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
 
엔지니어링관점에서 테스트 개선방안 질의 응답
엔지니어링관점에서 테스트 개선방안 질의 응답엔지니어링관점에서 테스트 개선방안 질의 응답
엔지니어링관점에서 테스트 개선방안 질의 응답
 
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
 
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
[IGC 2016] 엔씨소프트 김종원 - 모바일 테스트 자동화 시스템
 
글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례
글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례
글로벌 게임 플랫폼에서 무정지, 무점검 서버 개발과 운영 사례
 
Openshift 활용을 위한 Application의 준비, Cloud Native
Openshift 활용을 위한 Application의 준비, Cloud NativeOpenshift 활용을 위한 Application의 준비, Cloud Native
Openshift 활용을 위한 Application의 준비, Cloud Native
 

Nginx Testing in NAVER