• Like
[Gaming on AWS] 넥슨 - AWS를 활용한 모바일 게임 서버 개발: 퍼즐 주주의 사례
Upcoming SlideShare
Loading in...5
×

[Gaming on AWS] 넥슨 - AWS를 활용한 모바일 게임 서버 개발: 퍼즐 주주의 사례

  • 5,979 views
Uploaded on

AWS를 활용한 모바일 게임 서버 개발: 퍼즐 주주의 사례 - 넥슨 (윤석주 신사업본부 선임)

AWS를 활용한 모바일 게임 서버 개발: 퍼즐 주주의 사례 - 넥슨 (윤석주 신사업본부 선임)

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
5,979
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
169
Comments
0
Likes
30

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 넥슨 신사업본부윤석주AWS(Amazon Web Services)를활용한 모바일 게임 서버 개발퍼즐 주주의 사례를 중심으로
  • 2. 윤석주 ( @noricube )- 2012:서울- Zoo Invasion- 퍼즐 주주발표자 소개
  • 3. 퍼즐 주주는 어떤 게임?소셜 요소 쉬운 조작넥슨 최초 카카오 게임IOS 신규 무료 1위Android 신규 무료 1위최고 매출 20위
  • 4. 1. 퍼즐 주주 서버의 설계 목표2. AWS 3가지 장점3. AWS 장점 살리기4. AWS 활용5. 설계 목표 완수6. AWS 의 부가적인 장점목차5
  • 5. 퍼즐 주주 서버 설계 목표
  • 6. 확장성, 저비용, 안정성을 모두 고려퍼즐 주주 서버는7
  • 7. 퍼즐주주를 만들던 2012년 8월…우리도 많은 유저가 올 수 있다확장성8
  • 8. 짧은 수명불 확실한 미래저비용9
  • 9. 장애에 민감한 모바일 시장- 이미지 저하- 매출 하락안정성10
  • 10. 그래서 AWS 선택11
  • 11. AWS 3가지 장점
  • 12. 14
  • 13. 1. 빠른 확장성15
  • 14. scale-out16최소 2~3일 5분
  • 15. 클릭 한번에 끝!scale-up17
  • 16. 2. 적은 초기 비용18
  • 17. 초기 투자 없이 사용한 시간만 내면 됨!비용 절감19
  • 18. 개발 오픈 3주 1달 2달 3달 4달 5달물리 서버 AWS 유저누적 예상 비용21
  • 19. 3. 안정성22
  • 20. 여러 개의 Zone 동시 사용 가능- Zone은 다른 IDC (내가 쓰는 Zone이 핵폭탄을 맞는다면!?)- Zone간의 전용망 제공EBS(Elastic Block Storage)- 스토리지가 따로 분리- Replication안정성23
  • 21. 안정성24ElasticLoadBalancer유저
  • 22. 빠른 확장성적은 초기 비용안정성AWS 장점26
  • 23. AWS 장점 살리기
  • 24. 빠른 확장성적은 초기 비용안정성AWS 장점29
  • 25. Frontend / DB 만 존재30
  • 26. 단순한 서버 구조31ElasticLoadBalancer유저 Frontend DB
  • 27. Frontend32
  • 28. 모든 게임 로직 포함- 서버 확장을 쉽게 하기 위해요청을 최대한 단순화- 분산해서 처리하기 쉽도록Stateless- 유저 정보를 DB로만 동기화하여 동기화 이슈 제거Frontend33
  • 29. Frontend 원자성 보존34클라이언트에서요청DB에서데이터 로드요청 처리데이터 충돌이 있었는가?DB에 쓰고 종료예아니요
  • 30. Frontend 는 수평확장이 가능그럼 DB 도 수평확장이가능해야 하지 않을까?35
  • 31. NoSQL 도입- 서비스 중 수평 확장 가능- 쓰기가 많을 때 유리DB36
  • 32. 추가로..37
  • 33. 통계, 로그 등 추가로 필요한 서비스Redis의 Pub/Sub으로 메시지 전달서비스에 의존적이지 않도록 함기타 서비스38
  • 34. AWS 활용
  • 35. 수요 확장 대응40ElasticLoadBalancer유저 Frontend DBFrontend DB
  • 36. 수요 감소 대응41ElasticLoadBalancer유저 Frontend DBFrontend DB
  • 37. ㅇㅇㅇ장애 대응42ElasticLoadBalancer유저 Frontend DBFrontend DBFrontend DB실시간 복제
  • 38. Frontend에 부하가 몰리면 Frontend 추가DB에 부하가 몰리면 DB 추가 수요 대응거꾸로 수요가 줄어들면 Frontend / DB제거하여 비용 절감다시 한번 정리하자면43
  • 39. 설계 목표 완수
  • 40. 확장성, 저비용, 안정성45
  • 41. 장애 없는 서비스- 7개월 운영 가동률 99.9%안정성46
  • 42. 다양한 수요에 대응- 오픈 초기 빠르게 증가하는 수요를 모두 소화함비용 절감- 유지 비용 지속적으로 감소확장성 / 저비용47
  • 43. AWS 의 부가적인 장점
  • 44. 서버를 미리 셋팅 해두고원할 때 빠르게 확장 가능API로도 확장 가능서버 템플릿49
  • 45. 디스크 자체를 API로 백업백업50
  • 46. 점검 없는 업데이트51ELB FrontendFrontendFrontend
  • 47. 국내보다 해외망이 좋음- 한국- 일본- 미국모두 한 서버에서 서비스글로벌 서비스52
  • 48. 장애 발생시 템플릿으로 Instance를 추가장애 Instance를 제거즉시 해결 가능Instance != Server53
  • 49. 정리
  • 50. 모바일 게임에 좋다- 다양한 수요에 대응 가능- 초기 투자 비용 최소화- 서비스 안정성- 글로벌 서비스자동화 가능- 거의 모든 기능에 대한 API 지원Amazon Web Service55
  • 51. 인프라에 유리한 설계가 중요- 확장 가능한 DB 사용- Stateless- 서비스간 의존성 최소화- 요청 단순화Software on AWS56
  • 52. 보너스
  • 53. Couchbase?
  • 54. Key-value storage59
  • 55. 60서비스 도중 scale-in/out 가능
  • 56. 웹 UI로 된 관리 툴- Rebalance- Bucket 설정- 통계61
  • 57. Replication 지원 62
  • 58. Failover 지원 63
  • 59. DB 구조64
  • 60. Q&A