Building High Scale Systems Using Serverless Architecture for a Burning Man Event - Jonathan Zenou -...
-
Upload
devopsdays-tel-aviv -
Category
Technology
-
view
86 -
download
1
Transcript of Building High Scale Systems Using Serverless Architecture for a Burning Man Event - Jonathan Zenou -...
BUILDING HIGH SCALE SYSTEM USING SERVERLESS ARCHITECTURE
FOR A BURNING MAN EVENTJonathann Zenou
DevOps Days Tel Aviv 2017
DISCLAIMER
• This is not a serverless introduction
• This is about replacing
• This is a not a complicated solution
HELLO WORLD
• Jonathann Zenou
• Tel Aviv
• DevOps Engineer @ Oracle
MIDBURN.ORG
NUMBERS• Since 2014
• 3rd biggest
• 11000 participants
• 2500 volunteers
• 30 departments
MIDBURN TECH
• 50 yearly volunteers
• Perks of being a Non-Profit organisation
• Open source
• Crucial
TECHNOLOGY
• Production and Rnd in AWS
• SCM in Github (Open source !)
• Ruby, NodeJS and Java
SYSTEMS• volunteers system
• profile system
• gate system
• …
• ticket selling queue system
PROBLEMATIC
TICKETS SELLING SYSTEM• Sold out
• Very high demand in very short time
• Lottery ?
• 2 flash events
• FIFS
1ST ITERATION
• 2014
• Drupal + php + MySQL
• Management of the whole tickets process from Drupal
BUT
1 ST OUTAGE
• ~5000 concurrent users
• ~20 sessions by user
REMODELLING
REMODELLING
• One queuing system
• One selling system
2ND ITERATION
• 2015
• Backend : Heroku + Reddis + Ruby
• Frontend : Javascript + S3
Frontend
CSV
2015
2016
2ND OUTAGE
• a lot of users enter the system
• Backend is swamped
• Users hit “refresh”
• Backend is even more swamped
WHAT WE UNDERSTOOD ?
REMODELLING
3RD ITERATION
• 2017
• Frontend : still Javascript + S3
• Backend : …
CREATE AN API GATEWAY API AS AN AMAZON KINESIS
PROXYhttp://docs.aws.amazon.com/apigateway/latest/developerguide/
integrating-api-with-aws-services-kinesis.html
Amazon API Getaway
Amazon Kinesis Firehose
S3 STATIC SITE LOGIC
is the opened queue page up
?
No
wait 5 seconds and retry
TESTING
CROSSING FINGERS2nd sale of the year
NUMBERS• 15 minutes
• 3315 users
• 300 lucky users
• 4 seconds
• 3 000 000 requests
• 0 errors
–Itamar Cohen, Midburn's COO
The Midburn community is composed of thousands of people.Not everyone can get a ticket and people can
get angry and frustrated from it . With this new system we ensure that at least if someone does not
get a ticket it’s not because of a technical issue .
QUESTIONS ?