로드벨런서를 이용한 부하분산서버 질문입니다.


안녕하세요. 네티, 노드제이에스 등등 많은데 저는 Tomcat만 열심히 쓰고 있는데요. Tomcat 서버를 여러개를 둬서 로드밸런서로 부하분산하는 방식을 접했습니다. 보통 톰켓 서버 인스턴스 1개가 초당 TPS 300~350개를 처리한다고 하는데요. 대략 딜레이 3초라고 가정하고 서버 인스턴스 1개당 트랜잭션 1000개를 동시에 처리한다고 치면 동시접속자 3천명이 들어왔을때 서버 인스턴스 3개가 필요할 것 같습니다. 이렇게 로드밸런싱만 해주고 서버 구현은 인터넷에 떠도는 서블릿 예제 수준으로 짜면 상용화가 가능할까요? 그리고 보통 동시접속 3천명이면 앱 다운로드수로 쳤을때 몇만 정도 나오나요? 감사합니다.

  • 2016년 05월 27일에 작성됨
    개발을 공부하는 학생 ANDROID / IOS / JSP / VB.NET / AWS

  • 100만은 넘어야 될거 같은데요? 아닌가...    Manki Kim   2016.5.30 17:02     
조회수 182


1 답변


좋아요
0
싫어요
채택취소하기

다운로드를 동시접속으로 변환하는데는 너무 다양한 변수가 있습니다. 예를들어서 다음 그림을 한 번 보세요.

이미지

제가 출시했던 게임의 사용자 데이터인데요. 보라색은 다운로드, 초록색은 MAU(월간 사용자), 파란색은 DAU(일간 사용자)입니다. 다운로드가 아무리 올라도 사용자들이 계속 사용하지 않으면 다운로드수와 사용하는 실제 접속하는 사용자 사이에 큰 차이가 있습니다. 카카오톡같이 매일 사용하는 앱인지, 아니면 은행 앱 같이 가끔 한 번 켜는 앱인지에 따라서 앱 다운로드 수를 서버 부하로 연결해서 설명할 수 있습니다. 이외에도 너무나 많은 가정이 필요합니다. 그리고 tcp로 접속하는건지, 웹서버를 말하는지에 따라서도 다르구요. 한마디로 가정이 의미 없어요.

우선 최선을 다하시고 사용자가 폭발적으로 늘어나서 서버가 버벅대기 시작하면 그때 다시 대안을 찾는게 좋을것 같습니다. 저도 폭발하는 트래픽을 개발자로서 경험해 본건 아니지만, 옆에서 본 바로는 터지기 시작하면 어디서 터질지 알 수 없기 때문에 다 대비할 수는 없다고 하더군요. 터지기 시작하면 DB가 못버틸수도 있고 서버가 못버틸수도 있습니다.

  • 2016년 05월 31일에 수정됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 모바일 게임도 조금 만들어 봤습니다.
  • 2016년 05월 31일에 작성됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 모바일 게임도 조금 만들어 봤습니다.

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close