SlideShare a Scribd company logo
1 of 23
Download to read offline
雲端系統對爆量的測試與準備 -
以張惠妹秒殺售票為例
拓元售票
邱光宗
台灣第一的售票系統
運動 演唱會 影展
拓元售票與其子公司,元氣娛樂
自2012年起,每年銷售兩百萬張票
我們的發展歷史
拓連
成立於2000
網站資料庫專案製作
售票
系統
元氣娛樂
ibon售票系統供應商
授權 拓元
成立於2013
2003開始服務
2014成為子公司
以技術為股份
法人股東
增資
售票方式的變化
1996
年代售票系統啟用,開創網路/端點售票型態
10,000張/4~6小時
2011
ibon售票系統團隊初試啼聲,完成演唱會秒殺任務
100,000張/1小時
2014
智慧型手機使用率超越個人電腦後,售票系統的下一步?
100,000張/10分鐘
Ver. 1 - 2003
Internet
Users
UI
Database
Web
Application
Database
Overloaded
Ver. 2 - 2007
UI
Database
API
Service
UI
Web
Application
Internet
Users
Web Server
Overloaded
2008年,台灣7-Eleven在近5,000
家店內,建置了ibon機台,成為當
時國內數量最大的標準化末端設備
Ver. 3 - 2009
UI
Database
API
Service
UI
Web
Application
Internet
Users
全省5,000
家7-Eleven
店內
ibon
Intranet
In
CVS
POS
Overloaded
Customers
Queue in
Stores
有些變化發生了
雲端服務成熟 行動裝置成長
Affordable large-size
structure
Kiosks to mobile
phones
Ver. 4 - 2014
Internet
Users
X10,000
UI
Database
?
UI
Web
Application
120,000 張票
在12 分鐘完售
我們的目標
• 售票越快越好,但是要保留消費者選擇的可能性
• 保護主要資料庫
• 讓UI伺服器可以無限制(?)擴充
• 所有伺服器的資訊保持同步
• 做好即時備援方案
tixCraft System - UI
Amazon S3
Amazon
Route 53
Elastic Load
Balancing
DynamoDB
Amazon EC2
UI Servers
Auto Scaling
CloudFron
t
Static Files
tixCraft System - API
DynamoDB
Amazon EC2
API Servers
Auto Scaling
Elastic Load
Balancing
tixCraft
Ticketing
Server
Ticketing
database
售票的任務
• 爆炸性的人流
▫ 自動擴展來不及,因此需要在開賣前估算出量
• 選區選位的即時性
▫ 目前仍有30~60秒的不完全同步,將利用其他服務
改善
• 金流與備案
▫ 線上刷卡是否撐得住? 備案為何?
壓力測試
• 模擬客戶數
▫ 以50,000個同時要求為單位
▫ 模擬方式:開多台機器同步
送出多個要求
• AWS限制
▫ EC2 instances:申請10,000
▫ DynamoDB: Throughput拉
至r/w各200,000
檢查清單
• 依使用者操作流程
• 依資料進入流程
• 依各連外接入點
• 障礙與備案討論
▫ UI→監控、加機器
▫ DynamoDB→拉高Throughput、table分配
▫ API→自動擴展、死命加
▫ Payment
 收單刷卡掛點 - 批次轉虛擬帳號+公告
 無法進入刷卡頁 - 批次轉虛擬帳號+公告
 AWS payment掛點 - 替換機器+人工對帳
 虛擬帳號自動對帳異常 - 人工對帳
▫ 其他伺服器異常→切換備援機
障礙發生
實際狀況
• 開賣前10 min – 檢視機器數
• 開賣前 1 min – 觀察session數
• 開賣後 3 min – 發現結帳問題
• 開賣後 10 min – 處理
• 開賣後 15 min – 完售與公告
金流狀況與改善方向
• 拓元訂單產生速度
▫ 每秒約200~300筆,最快每秒500+筆
• 銀行收單速度
▫ 一般銀行最多到每秒30筆
▫ 經改善後,目前收單行可拉到每秒75筆
▫ NCCC理論上可以到每秒100筆,但未經驗證
• 改善方法
▫ 網站前端拉長導至收單行的時間
▫ 利用ATM虛擬帳號收單,限制繳款時間在1小時內
拓元售票
邱光宗
ktchiu@tixCraft.com

More Related Content

What's hot

What's hot (20)

[115]쿠팡 서비스 클라우드 마이그레이션 통해 배운것들
[115]쿠팡 서비스 클라우드 마이그레이션 통해 배운것들[115]쿠팡 서비스 클라우드 마이그레이션 통해 배운것들
[115]쿠팡 서비스 클라우드 마이그레이션 통해 배운것들
 
Executing a Large-Scale Migration to AWS
Executing a Large-Scale Migration to AWSExecuting a Large-Scale Migration to AWS
Executing a Large-Scale Migration to AWS
 
Introduction to AWS and Cloud Computing - Module 1 Part 1 - AWSome Day 2017
Introduction to AWS and Cloud Computing - Module 1 Part 1 - AWSome Day 2017Introduction to AWS and Cloud Computing - Module 1 Part 1 - AWSome Day 2017
Introduction to AWS and Cloud Computing - Module 1 Part 1 - AWSome Day 2017
 
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
Real-time Streaming and Querying with Amazon Kinesis and Amazon Elastic MapRe...
 
Application Migrations
Application MigrationsApplication Migrations
Application Migrations
 
Build your first blockchain application with Amazon Managed Blockchain - SVC2...
Build your first blockchain application with Amazon Managed Blockchain - SVC2...Build your first blockchain application with Amazon Managed Blockchain - SVC2...
Build your first blockchain application with Amazon Managed Blockchain - SVC2...
 
Building a Solid Business Case for Cloud Migration
Building a Solid Business Case for Cloud MigrationBuilding a Solid Business Case for Cloud Migration
Building a Solid Business Case for Cloud Migration
 
Running Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
Running Microsoft SharePoint On AWS - Smartronix and AWS - WebinarRunning Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
Running Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
 
Aws platform overview
Aws platform overviewAws platform overview
Aws platform overview
 
Getting Started with Amazon Aurora
Getting Started with Amazon AuroraGetting Started with Amazon Aurora
Getting Started with Amazon Aurora
 
AWS 101: Introduction to AWS
AWS 101: Introduction to AWSAWS 101: Introduction to AWS
AWS 101: Introduction to AWS
 
Cost Optimisation on AWS
Cost Optimisation on AWSCost Optimisation on AWS
Cost Optimisation on AWS
 
Intro to AWS Lambda
Intro to AWS Lambda Intro to AWS Lambda
Intro to AWS Lambda
 
Migration Planning with AWS Application Discovery Service - ENT308 - Chicago ...
Migration Planning with AWS Application Discovery Service - ENT308 - Chicago ...Migration Planning with AWS Application Discovery Service - ENT308 - Chicago ...
Migration Planning with AWS Application Discovery Service - ENT308 - Chicago ...
 
Amazon CloudFront - Delivering Dynamic Content From The Edge
Amazon CloudFront - Delivering Dynamic Content From The EdgeAmazon CloudFront - Delivering Dynamic Content From The Edge
Amazon CloudFront - Delivering Dynamic Content From The Edge
 
Breaking down the economics and tco of migrating to aws - Toronto
Breaking down the economics and tco of migrating to aws - TorontoBreaking down the economics and tco of migrating to aws - Toronto
Breaking down the economics and tco of migrating to aws - Toronto
 
Cloud Foundations
Cloud FoundationsCloud Foundations
Cloud Foundations
 
Introduction to CloudFront
Introduction to CloudFrontIntroduction to CloudFront
Introduction to CloudFront
 
Migrating Databases to the Cloud: Introduction to AWS DMS - SRV215 - Chicago ...
Migrating Databases to the Cloud: Introduction to AWS DMS - SRV215 - Chicago ...Migrating Databases to the Cloud: Introduction to AWS DMS - SRV215 - Chicago ...
Migrating Databases to the Cloud: Introduction to AWS DMS - SRV215 - Chicago ...
 
Cost Optimisation
Cost OptimisationCost Optimisation
Cost Optimisation
 

More from KT Chiu (7)

[tixCraft] Our Services
[tixCraft] Our Services[tixCraft] Our Services
[tixCraft] Our Services
 
Case sharing - tixCraft on AWS re:Invent 2015 Recap | 台灣
Case sharing - tixCraft on AWS re:Invent 2015 Recap | 台灣Case sharing - tixCraft on AWS re:Invent 2015 Recap | 台灣
Case sharing - tixCraft on AWS re:Invent 2015 Recap | 台灣
 
[tixCraft] Craft of Tickets
[tixCraft] Craft of Tickets[tixCraft] Craft of Tickets
[tixCraft] Craft of Tickets
 
感應票券與其售票應用 - 以Utopia 2015 World Tour 台北站為例
感應票券與其售票應用 - 以Utopia 2015 World Tour 台北站為例感應票券與其售票應用 - 以Utopia 2015 World Tour 台北站為例
感應票券與其售票應用 - 以Utopia 2015 World Tour 台北站為例
 
tixCraft Intro - draft
tixCraft Intro - drafttixCraft Intro - draft
tixCraft Intro - draft
 
From brotherelephantstomayday
From brotherelephantstomaydayFrom brotherelephantstomayday
From brotherelephantstomayday
 
從兄弟象到五月天
從兄弟象到五月天從兄弟象到五月天
從兄弟象到五月天
 

雲端系統對爆量的測試與準備 - 以張惠妹秒殺售票為例