SlideShare a Scribd company logo
1 of 16
Scaling Dubsmash's backend
from 0 to 100+ million users
PYCON.DE Munich - Daniel Taschik – 10/29/2016
We hit a nerve.
>100M
Users
192
Countries
1.5B
Videos
Dubsmash
Connect Create Communicate
The Start
The Start
Backend
• Django-powered BE for content
management
• web-based Dubloader to add sounds
• deployed on Heroku
Content Delivery
• sound files in S3
• meta information in JSON file in S3
• files served via Cloudfront CDN
Metrics
• Dubloader with < 100 req/min
• >500 TB! of traffic in January 2015
Dubsmash Service Landscape
Backend
Router
S3 sound storage
Cloudfront CDN
New Features: Registration & Search
User registration
• API based on REST framework
• Django user model
• store user’s most like sounds
• push notifications for new content
Server-side Sound search
• new Django-based service
• search via ElasticSearch using Haystack
• Celery-based indexing on RQ
Metrics
• 100.000 registrations within first 24h
• >20.000 requests per minute on search service
caching
Cloudfront CDN
S3 sound storage
Dubsmash Service Landscape
Searc
h
Router
main API
DubTalk
Social Graph Service
• friend relations on platform
• Django
• TitanDB on Cassandra
• later DynamoDB
DubTalk Service
• group & video management
• Django
Service Communication
• Async via Celery on RabbitMQ
• Sync via internal HTTPS API
Metrics
• > 50.000 requests per min on both
• > 150.000.000 videos stored
NoSQL
Cloudfront CDN
caching
S3 sound storage
Dubsmash Service Landscape
GraphDubTalk
Router
Monolith
relational DB
Large Scale Problems
favorited sounds outgrew our PostgreSQL
• > 1.000.000.000 favorited sounds
• simple data model & access pattern
• Premium-7 120GB RAM, 1TB disk instance
dtaschik@unic0rn:~/dubsmash$ heroku pg:table-size -a dubsmash
name | size
-----------------------------------+------------
users_favs | 158 GB
dtaschik@unic0rn:~/dubsmash $ heroku pg:index-size -a dubsmash
name | size
-----------------------------------+------------
users_favs_username_key | 132 GB
ID username sound_id
1 daniel3 Dzdcjc
2 sarah 3jGYzH
Let’s make it a new service!
Cloudfront CDNS3 sound storage
Dubsmash Service Landscape
Auth
Graph DubTalk
Favs
Router
Monolith
relational DB
caching
NoSQL
many
more
Our Goal
Interested? Come and join! 😜
Building the largest mobile video communication
platform!
Questions?
daniel@dubsmash.com | daniel3 | @dtaschik
Let’s say it with video!
Thank you!
daniel@dubsmash.com | daniel3 | @dtaschik

More Related Content

Viewers also liked

5S_Implementation_Guide
5S_Implementation_Guide5S_Implementation_Guide
5S_Implementation_GuideSelvakumar K
 
Chudnutie v praxi ako sa zbaviť obezity
Chudnutie v praxi   ako sa zbaviť obezityChudnutie v praxi   ako sa zbaviť obezity
Chudnutie v praxi ako sa zbaviť obezityMiro Veselý
 
Top 10 Game yang Sequelnya Tenggelam
Top 10 Game yang Sequelnya TenggelamTop 10 Game yang Sequelnya Tenggelam
Top 10 Game yang Sequelnya TenggelamCaroline Winata
 
Pretzelmaker Franchise Opportunity Available in Orlando, Florida!
Pretzelmaker Franchise Opportunity Available in Orlando, Florida!Pretzelmaker Franchise Opportunity Available in Orlando, Florida!
Pretzelmaker Franchise Opportunity Available in Orlando, Florida!Pretzelmaker
 

Viewers also liked (7)

5S_Implementation_Guide
5S_Implementation_Guide5S_Implementation_Guide
5S_Implementation_Guide
 
RA APP
RA APPRA APP
RA APP
 
Globalización
GlobalizaciónGlobalización
Globalización
 
Alper Okay CV
Alper Okay CVAlper Okay CV
Alper Okay CV
 
Chudnutie v praxi ako sa zbaviť obezity
Chudnutie v praxi   ako sa zbaviť obezityChudnutie v praxi   ako sa zbaviť obezity
Chudnutie v praxi ako sa zbaviť obezity
 
Top 10 Game yang Sequelnya Tenggelam
Top 10 Game yang Sequelnya TenggelamTop 10 Game yang Sequelnya Tenggelam
Top 10 Game yang Sequelnya Tenggelam
 
Pretzelmaker Franchise Opportunity Available in Orlando, Florida!
Pretzelmaker Franchise Opportunity Available in Orlando, Florida!Pretzelmaker Franchise Opportunity Available in Orlando, Florida!
Pretzelmaker Franchise Opportunity Available in Orlando, Florida!
 

Similar to Scaling Dubsmash's backend from 0 to 100+ million users

Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013Amazon Web Services
 
Strategic Uses for Cost Efficient Long-Term Cloud Storage
Strategic Uses for Cost Efficient Long-Term Cloud StorageStrategic Uses for Cost Efficient Long-Term Cloud Storage
Strategic Uses for Cost Efficient Long-Term Cloud StorageAmazon Web Services
 
Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...
Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...
Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...Amazon Web Services
 
AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...
AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...
AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...Amazon Web Services
 
Deep Dive on Archiving and Compliance
Deep Dive on Archiving and ComplianceDeep Dive on Archiving and Compliance
Deep Dive on Archiving and ComplianceAmazon Web Services
 
Architecting a 24x7 Live Linear Broadcast for Availability on AWS
Architecting a 24x7 Live Linear Broadcast for Availability on AWSArchitecting a 24x7 Live Linear Broadcast for Availability on AWS
Architecting a 24x7 Live Linear Broadcast for Availability on AWSAmazon Web Services
 
Migrate the Mission Critical Application to AWS Cloud
Migrate the Mission Critical Application to AWS CloudMigrate the Mission Critical Application to AWS Cloud
Migrate the Mission Critical Application to AWS CloudShuen-Huei Guan
 
stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...
stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...
stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...NETWAYS
 
BUILD 2014 - Building end-to-end video experience with Azure Media Services
BUILD 2014 - Building end-to-end video experience with Azure Media ServicesBUILD 2014 - Building end-to-end video experience with Azure Media Services
BUILD 2014 - Building end-to-end video experience with Azure Media ServicesMingfei Yan
 
Nokta techpresentation
Nokta techpresentationNokta techpresentation
Nokta techpresentationAnkaraCloud
 
Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10
Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10
Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10Nuxeo
 
How Netflix Directs 1/3rd of Internet Traffic
How Netflix Directs 1/3rd of Internet TrafficHow Netflix Directs 1/3rd of Internet Traffic
How Netflix Directs 1/3rd of Internet TrafficC4Media
 
A cloud-based digital supply chain: Not just about capacity
A cloud-based digital supply chain: Not just about capacity A cloud-based digital supply chain: Not just about capacity
A cloud-based digital supply chain: Not just about capacity Amazon Web Services
 
AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)
AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)
AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)Amazon Web Services
 
Unlocking LOCKSS with APIs
Unlocking LOCKSS with APIsUnlocking LOCKSS with APIs
Unlocking LOCKSS with APIsnullhandle
 
From a video archive to a near-live media distribution platform - Gaches, Ol...
From a video archive to a near-live media distribution platform -  Gaches, Ol...From a video archive to a near-live media distribution platform -  Gaches, Ol...
From a video archive to a near-live media distribution platform - Gaches, Ol...FIAT/IFTA
 
Amazon Web Services and Interact - Workshop Giugno 2013
Amazon Web Services and Interact - Workshop Giugno 2013Amazon Web Services and Interact - Workshop Giugno 2013
Amazon Web Services and Interact - Workshop Giugno 2013Paolo latella
 
AWS Services for Content Production
AWS Services for Content ProductionAWS Services for Content Production
AWS Services for Content ProductionAmazon Web Services
 

Similar to Scaling Dubsmash's backend from 0 to 100+ million users (20)

Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
Maximizing Audience Engagement in Media Delivery (MED303) | AWS re:Invent 2013
 
Strategic Uses for Cost Efficient Long-Term Cloud Storage
Strategic Uses for Cost Efficient Long-Term Cloud StorageStrategic Uses for Cost Efficient Long-Term Cloud Storage
Strategic Uses for Cost Efficient Long-Term Cloud Storage
 
Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...
Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...
Active Archiving with Amazon S3 and Tiering to Amazon Glacier - March 2017 AW...
 
AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...
AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...
AWS re:Invent 2016: Strategic Planning for Long-Term Data Archiving with Amaz...
 
Cloud for Media - A Complete Solution Stack for Faster Cloud Adoption
Cloud for Media - A Complete Solution Stack for Faster Cloud AdoptionCloud for Media - A Complete Solution Stack for Faster Cloud Adoption
Cloud for Media - A Complete Solution Stack for Faster Cloud Adoption
 
Deep Dive on Archiving and Compliance
Deep Dive on Archiving and ComplianceDeep Dive on Archiving and Compliance
Deep Dive on Archiving and Compliance
 
Architecting a 24x7 Live Linear Broadcast for Availability on AWS
Architecting a 24x7 Live Linear Broadcast for Availability on AWSArchitecting a 24x7 Live Linear Broadcast for Availability on AWS
Architecting a 24x7 Live Linear Broadcast for Availability on AWS
 
Migrate the Mission Critical Application to AWS Cloud
Migrate the Mission Critical Application to AWS CloudMigrate the Mission Critical Application to AWS Cloud
Migrate the Mission Critical Application to AWS Cloud
 
stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...
stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...
stackconf 2023 | Scaling a Collaboration Service like Nextcloud to 20 Million...
 
BUILD 2014 - Building end-to-end video experience with Azure Media Services
BUILD 2014 - Building end-to-end video experience with Azure Media ServicesBUILD 2014 - Building end-to-end video experience with Azure Media Services
BUILD 2014 - Building end-to-end video experience with Azure Media Services
 
Nokta techpresentation
Nokta techpresentationNokta techpresentation
Nokta techpresentation
 
Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10
Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10
Nuxeo Platform LTS 2015 - Opening Keynote Event 2015-10
 
How Netflix Directs 1/3rd of Internet Traffic
How Netflix Directs 1/3rd of Internet TrafficHow Netflix Directs 1/3rd of Internet Traffic
How Netflix Directs 1/3rd of Internet Traffic
 
A cloud-based digital supply chain: Not just about capacity
A cloud-based digital supply chain: Not just about capacity A cloud-based digital supply chain: Not just about capacity
A cloud-based digital supply chain: Not just about capacity
 
AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)
AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)
AWS re:Invent 2016: Deep Dive on Amazon Glacier (STG302)
 
Unlocking LOCKSS with APIs
Unlocking LOCKSS with APIsUnlocking LOCKSS with APIs
Unlocking LOCKSS with APIs
 
From a video archive to a near-live media distribution platform - Gaches, Ol...
From a video archive to a near-live media distribution platform -  Gaches, Ol...From a video archive to a near-live media distribution platform -  Gaches, Ol...
From a video archive to a near-live media distribution platform - Gaches, Ol...
 
Amazon Web Services and Interact - Workshop Giugno 2013
Amazon Web Services and Interact - Workshop Giugno 2013Amazon Web Services and Interact - Workshop Giugno 2013
Amazon Web Services and Interact - Workshop Giugno 2013
 
Sony MCS Cloud
Sony MCS CloudSony MCS Cloud
Sony MCS Cloud
 
AWS Services for Content Production
AWS Services for Content ProductionAWS Services for Content Production
AWS Services for Content Production
 

Recently uploaded

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 

Recently uploaded (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Scaling Dubsmash's backend from 0 to 100+ million users

  • 1. Scaling Dubsmash's backend from 0 to 100+ million users PYCON.DE Munich - Daniel Taschik – 10/29/2016
  • 2. We hit a nerve. >100M Users 192 Countries 1.5B Videos
  • 5. The Start Backend • Django-powered BE for content management • web-based Dubloader to add sounds • deployed on Heroku Content Delivery • sound files in S3 • meta information in JSON file in S3 • files served via Cloudfront CDN Metrics • Dubloader with < 100 req/min • >500 TB! of traffic in January 2015
  • 6. Dubsmash Service Landscape Backend Router S3 sound storage Cloudfront CDN
  • 7.
  • 8. New Features: Registration & Search User registration • API based on REST framework • Django user model • store user’s most like sounds • push notifications for new content Server-side Sound search • new Django-based service • search via ElasticSearch using Haystack • Celery-based indexing on RQ Metrics • 100.000 registrations within first 24h • >20.000 requests per minute on search service
  • 9. caching Cloudfront CDN S3 sound storage Dubsmash Service Landscape Searc h Router main API
  • 10. DubTalk Social Graph Service • friend relations on platform • Django • TitanDB on Cassandra • later DynamoDB DubTalk Service • group & video management • Django Service Communication • Async via Celery on RabbitMQ • Sync via internal HTTPS API Metrics • > 50.000 requests per min on both • > 150.000.000 videos stored
  • 11. NoSQL Cloudfront CDN caching S3 sound storage Dubsmash Service Landscape GraphDubTalk Router Monolith relational DB
  • 12. Large Scale Problems favorited sounds outgrew our PostgreSQL • > 1.000.000.000 favorited sounds • simple data model & access pattern • Premium-7 120GB RAM, 1TB disk instance dtaschik@unic0rn:~/dubsmash$ heroku pg:table-size -a dubsmash name | size -----------------------------------+------------ users_favs | 158 GB dtaschik@unic0rn:~/dubsmash $ heroku pg:index-size -a dubsmash name | size -----------------------------------+------------ users_favs_username_key | 132 GB ID username sound_id 1 daniel3 Dzdcjc 2 sarah 3jGYzH Let’s make it a new service!
  • 13. Cloudfront CDNS3 sound storage Dubsmash Service Landscape Auth Graph DubTalk Favs Router Monolith relational DB caching NoSQL many more
  • 14. Our Goal Interested? Come and join! 😜 Building the largest mobile video communication platform!
  • 16. Let’s say it with video! Thank you! daniel@dubsmash.com | daniel3 | @dtaschik

Editor's Notes

  1. Dubsmash is a product with global scale. 100m users, in 192 countries created over 1,5bn videos in total. most famous ones are jimmy fallon, Huge Jackman, Arnold Schwarzenegger or Jennifer Lopez and recently emma dickson?
  2. connect, create communicate withfamily and friends but started as a very simple, 3-screen protoypical creational tool.
  3. the cave – building Dubsmash out of a Berlin souterrain 50 sqm office
  4. early 2015
  5. started mid 2015
  6. mid 2016