chatting server on aws
Post on 07-Apr-2017
1.517 Views
Preview:
TRANSCRIPT
Chatting Server on AWS발란스커리어(스터디서치) CTO
김승연
3회 세미나
DynamoDB 삽질기
DynamoDB python wrapper
https://github.com/teddychoi/BynamoDB
오늘
dnachat
Chatting Server on AWS
https://github.com/BalanceCareerInc/dnachat
Python / Twisted / bson
일단 latency가 어떻게 되나?
패킷이 도쿄를 갔다 오는데!
Ucloud vs AWS ap-northeast-1
Min Max Avg
유선 18 55 26
무선 113 312 199
Min Max Avg
유선 52 70 56.84
무선 160 360 260
Ucloud가 빨랐으나 AWS도 쓸만 하더라
한 번 보고 가자
•Live Chatting
•Logging
•Push Notification
둘 다 온라인일 때 – Live Chatting
Performance
• EC2 t2.medium 2 대
• ElastiCache redis t1.micro 1 대
• 분당 8만 트랜잭션 (A -> AWS -> B -> AWS -> A)
ElastiCache
LiveChatServer
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Message
Publish
ElastiCache
LiveChatServer
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Message
SubscribeMessage
ElastiCache
LiveChatServer
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Ack
Publish
ElastiCache
LiveChatServer
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Ack
SubscribeAck
늦게라도 메시지를 읽자 - Logging
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Message
LiveChatServer
Log Server
ElastiCache
Amazon SQS
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Message
LiveChatServer
Log Server
Amazon SQS
DynamoDB
지금 메시지가 왔어 – Push Notification
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Message
LiveChatServer
Log Server
ElastiCache
Amazon SQS
LiveChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Message
LiveChatServer
Log Server
Amazon SQS
Amazon SNS
채팅서버에 명령내리기 – Chat API
LiveChatServer
Auto Scaling group
LiveChatServer
Web Server
Amazon SQS
ElastiCache
ChatServer
ChatServer
ElasticLoad Balancer
Auto Scaling group
mobile client
mobile client
Message
Logging CommandNotification
Amazon SNS
Q&A
top related