78
정민영 CTO THE BEATPACKING COMPANY

Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Embed Size (px)

Citation preview

Page 1: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

정민영

CTOTHE BEATPACKING COMPANY

Page 2: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

BEAT 소개

Page 3: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

국내최초무료라디오서비스

Page 4: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 5: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

숫자

Page 6: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

2014. 4월비트라디오출시

Page 7: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

2014. 4월비트라디오출시3~400% 성장/월

Page 8: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

2014. 4월비트라디오출시2~300% 성장/월한달에 100만+씩성장중

Page 9: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

30만+명/일 5분이상청취

Page 10: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

30만+명/일 5분이상청취35만+시간/일

Page 11: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

30만+명/일 5분이상청취35만+시간/일9백만+곡재생/일

Page 12: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

30만+명/일 5분이상청취35만+시간/일9백만+곡재생/일5백만+곡정산/일

Page 13: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

폭주성장에대처하는스타트업의자세

Page 14: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

부제: 최대한사람이필요없는인프라만들기

Page 15: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

부제: 최대한사람이필요없는인프라만들기그리고, 최대한저렴하게버텨보기

Page 16: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

어떻게하면인프라를

Page 17: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

어떻게하면인프라를안정적으로

Page 18: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

어떻게하면인프라를안정적으로유연하면서도

Page 19: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

어떻게하면인프라를안정적으로유연하면서도개발자를아껴가며(!)

Page 20: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

어떻게하면인프라를안정적으로유연하면서도개발자를아껴가며(!)

돈도절약할까?

Page 21: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 22: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 23: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 24: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Elastic Compute Cloud

Page 25: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

서버에대한기존의관점

Page 26: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

PEAK

Page 27: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

서버에대한 21세기클라우드의관점

Page 28: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 29: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

3번강조해도부족한 AutoScale

Page 30: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Instance Hour

= 인스턴스사용시간= 과금단위

Page 31: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

c3.xlarge * 4대 * 61분= 2 Instance Hour * 4

= 8 Instance Hour

= 2.04 USD / Hour

Page 32: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

28만원/일 VS 12만원/일

Page 33: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Peak를처리하기위해 40대가필요하다면,

= 40 Instance Hour * 24

= 960 Instance Hour / Day

= 244.8 USD / Hour

Page 34: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Peak를처리하기위해 40대가필요하다면,

= 40 Instance Hour * 9

+ 5 Instance Hour * 15

= 435 Instance Hour / Day

= 110.925 USD / Hour

Page 35: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

아무리잘나가는서비스도,

항상 PEAK일수는없는법

Page 36: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

원하는조건에맞춰서(Policy)

Page 37: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

원하는조건에맞춰서(Policy)

지정한설정값으로(Launch Configuration)

Page 38: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

원하는조건에맞춰서(Policy)

지정한설정값으로(Launch Configuration)

인스턴스를자동으로생성/삭제

Page 39: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 40: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

SPOT Instance

Page 41: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

SPOT Instance

AWS의여유자원을경매를통해이용

Page 42: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

0 0.05 0.1 0.15 0.2 0.25 0.3

On Demand

Reserved 1yr

Spot

C3.xlarge 가격비교

USD

Page 43: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 44: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

SPOT Instance

단, 인스턴스생명주기를통제할수없음= 언제든빼앗길수있음

Page 45: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

6:00 9:00 12:00 15:00 18:00 21:00 0:00

On-Demand Spot Load

Spot : 5분간평균 CPU이용률 40%

OD : 5분간평균 CPU이용률 60%

Page 46: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

6:00 9:00 12:00 15:00 18:00 21:00 0:00

On-Demand Spot Load

Spot 확보에실패한경우On-Demand가 Scale-Up

Spot 확보에따른On-Demand Scale-Down

Page 47: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

DynamoDB

Page 48: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

처리량만결정하면알아서Scale 하는 NoSQL DB

Page 49: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

처리량= 필요한초당읽기 (/4kb)

= 필요한초당쓰기 (/1kb)

Page 50: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

평균 2kb인항목을 100번쓰고읽는다면= 100(Read) * 1 = 100

= 100(Write) * 2 = 200

Page 51: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

요청수와크기에따라서자동으로 Scale

Page 52: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

요청수와크기에따라서자동으로 Scale

= 데이터크기와트래픽증가에유연한 DB

Page 53: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

두가지종류의인덱스지원

Page 54: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Local Secondary Index

= Alternate Range Key

= 특정 Hash Key의결과를필터링= 특정 Hash Key에서다른정렬

Page 55: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Global Secondary Index

= Alternate Key

= 테이블의 Hash Key와무관= 별도의읽기&쓰기처리량요구

Page 56: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

다양한데이터타입지원

Page 57: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

다양한데이터타입지원= String, Number, Binary

= String Set, Number Set, Binary Set

= JSON – Bool, Null, List, Map

Page 58: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

고도화된 API 지원

Page 59: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

고도화된 API 지원= 수정&조건표현식= Atomic

= Batch

Page 60: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 61: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 62: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 63: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

파티션당 Read

= 5000/3 = 1666.67

파티션당 Write

= 500/3 = 166.67

Page 64: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

Hash Key 에의해파티션이결정= Hash Key 선정이매우중요= 잘분산되는키를선택하는게중요

Page 65: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 66: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

AGAIN,

아무리잘나가는서비스도,

항상 PEAK일수는없는법.

DB도유연할수없을까?

Page 67: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 68: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 69: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

부하에따른좀더능동적인처리량조정

Page 70: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

dynamo-autoscale

Page 71: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 72: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

UpdateTable

= 읽기/쓰기처리요구량실시간조정= 올리는건하루에몇번이고가능= 내리는건 4회/24시간제하

Page 73: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

RECAP

Page 74: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

= API, API, API

= 부하수준에맞춰유연하게사용= AWS의다양한가격정책을적극활용

Page 75: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유
Page 76: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

AWS 한국사용자모임

http://awskr.org

Page 77: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

http://jobs.beatpacking.com

Page 78: Cloud Taekwon 2015 - 비트패킹컴퍼니 사례 공유

감사합니다.