SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
The Great Migration:
Embracing Serverless First
1
Angela Timofte - Tech Lead
@Trustpilot
15.10.2019
2
Agenda
● About Trustpilot
● Trustpilot’s history with Serverless development
● Challenges with Serverless architecture
● Advantages and wins of having a Serverless
architecture
● Example of serverless architecture
● Lessons to share
Founded in 2007 in Denmark
7 global offices and +700 employees
Trustpilot in numbers
+50 mil users & +70 mil reviews
1.8 mil reviews in September 2019 compared to 900.000 reviews 2 years
ago
Serverless at Trustpilot
● Initial release of Lambda functions in November 2014 @re:Invent
● Trustpilot’s stack at that time: C# .NET, MSSQL DB, MongoDB,
EC2
● Early 2014 we started decoupling our monolith service into
context based services
● Transitioning from MSSQL DB to MongoDB
The Serverless Native Mindset
https://www.freecodecamp.org/news/serverless-is-cheaper-not-simpler-a10c4fc3
0e49/
Serverless First
7
If serverless is not available or practical, containers are recommended.
Virtual servers (EC2) are considered legacy and should be avoided.
We do this because we strongly believe that serverless (FaaS, BaaS, DBaaS) is the
future of the cloud and we’d like to be on the forefront of that movement. Serverless
might not necessarily be the right choice for everything today, but start your architecture
discussions there. We’re in the process of fading out virtual servers (EC2) and want to
avoid creating new ones. The benefits of serverless and containers over virtual servers
are diverse: cost savings, better scaling, better orchestration, reduction of operational
costs and modernizing our cloud stack.
8
Serverless First principle
.NET Core
EC2 GTFO
11
Serverless First principle
.NET Core
EC2 GTFO
Serverless is not just FAAS
●
Serverless Databases: DynamoDB and Aurora Serverless
@Trustpilot we started to adopt:
● DynamoDB around 2017
● Aurora this year
Infrastructure we run now
Storage
Mongo - 16 production clusters
Redshift - 2 production clusters
RDS - 10 production databases
Redis - 3 production clusters
ElasticSearch - 6 production clusters
CloudSearch - 1 production domain
Aurora - 14 production clusters
DynamoDB - 109 production tables
Services
EC2 - 53
ECS - 329
Lambda - 371
S3 - 119
SQS
~450 production queues
~50M messages per day
SNS
~250 production topics
~7.1M messages per day
~27M deliveries per day
Challenges with Serverless architecture
●
● serverless mindset
● a lot of abstraction to learn
● local development
● limitations around execution time
Advantages and wins of having a
Serverless architecture
● Fewer developer logistics
● More time focused on writing code
● Inherently scalable. “Give me 1000 containers instantly”
● Never pay for idle resources
Cost improvements
● image with percentages of how much it cost
EC2 compute Lambda
Less bugs
A problem to solve with a serverless
approach
● Users signup with email
● They are created in our DB as un-activated accounts
● The users will receive an email to activate their account
● If they don’t activate in 30 days we need to delete their account from all of
our systems
Example of serverless architecture
22
Keep your serverless functions small
and focused.
You need to keep up with new
technology but don’t jump on the
bandwagon before you fully
understand how to use it.
Lessons that
we learned
Give your team time to learn and
adopt the serverless mindset.
The great migration  embracing serverless first

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

From AIX to Zero-ops by Pierre Baillet
From AIX to Zero-ops by Pierre BailletFrom AIX to Zero-ops by Pierre Baillet
From AIX to Zero-ops by Pierre Baillet
 
Best practices for running Windows workloads on AWS - AWS Summit Stockholm (M...
Best practices for running Windows workloads on AWS - AWS Summit Stockholm (M...Best practices for running Windows workloads on AWS - AWS Summit Stockholm (M...
Best practices for running Windows workloads on AWS - AWS Summit Stockholm (M...
 
Serverless Computing @ x-celerate 2018
Serverless Computing @ x-celerate 2018Serverless Computing @ x-celerate 2018
Serverless Computing @ x-celerate 2018
 
Tracing Java Applications on Azure
Tracing Java Applications on AzureTracing Java Applications on Azure
Tracing Java Applications on Azure
 
Serverless Computing: Run code, not servers
Serverless Computing: Run code, not serversServerless Computing: Run code, not servers
Serverless Computing: Run code, not servers
 
Serverless Computing with AWS
Serverless Computing with AWSServerless Computing with AWS
Serverless Computing with AWS
 
How we use the play framework
How we use the play frameworkHow we use the play framework
How we use the play framework
 
Tabtale story: Building a publishing and monitoring mobile games architecture...
Tabtale story: Building a publishing and monitoring mobile games architecture...Tabtale story: Building a publishing and monitoring mobile games architecture...
Tabtale story: Building a publishing and monitoring mobile games architecture...
 
Modern Collaboration Development (Part 2)
Modern Collaboration Development (Part 2)Modern Collaboration Development (Part 2)
Modern Collaboration Development (Part 2)
 
Working with Azure Cosmos DB in Azure Functions
Working with Azure Cosmos DB in Azure FunctionsWorking with Azure Cosmos DB in Azure Functions
Working with Azure Cosmos DB in Azure Functions
 
Nielsen Presents: Fun with Kafka, Spark and Offset Management
Nielsen Presents: Fun with Kafka, Spark and Offset ManagementNielsen Presents: Fun with Kafka, Spark and Offset Management
Nielsen Presents: Fun with Kafka, Spark and Offset Management
 
Spark logs made easy
Spark logs made easySpark logs made easy
Spark logs made easy
 
Auditing data and answering the life long question, is it the end of the day ...
Auditing data and answering the life long question, is it the end of the day ...Auditing data and answering the life long question, is it the end of the day ...
Auditing data and answering the life long question, is it the end of the day ...
 
WebDriver Lamda - Next Gen Scalable Test
WebDriver Lamda - Next Gen Scalable TestWebDriver Lamda - Next Gen Scalable Test
WebDriver Lamda - Next Gen Scalable Test
 
Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...
Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...
Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...
 
Start Serverless with Golang!
Start Serverless with Golang!Start Serverless with Golang!
Start Serverless with Golang!
 
How to Leverage Serverless to Optimize for Cost and Performance
How to Leverage Serverless to Optimize for Cost and PerformanceHow to Leverage Serverless to Optimize for Cost and Performance
How to Leverage Serverless to Optimize for Cost and Performance
 
The Problem is Data: Gwen Shapira, Confluent, Serverless NYC 2018
The Problem is Data: Gwen Shapira, Confluent, Serverless NYC 2018The Problem is Data: Gwen Shapira, Confluent, Serverless NYC 2018
The Problem is Data: Gwen Shapira, Confluent, Serverless NYC 2018
 
AWS for web developers
AWS for web developersAWS for web developers
AWS for web developers
 
A novel building infrastructure as code
A novel building infrastructure as codeA novel building infrastructure as code
A novel building infrastructure as code
 

Ähnlich wie The great migration embracing serverless first

MongoDB Evening Austin, TX 2017
MongoDB Evening Austin, TX 2017MongoDB Evening Austin, TX 2017
MongoDB Evening Austin, TX 2017
MongoDB
 

Ähnlich wie The great migration embracing serverless first (20)

How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product How we leveraged Drupal to build a leading SaaS product
How we leveraged Drupal to build a leading SaaS product
 
Not Your Father’s Web App: The Cloud-Native Architecture of images.nasa.gov
Not Your Father’s Web App: The Cloud-Native Architecture of images.nasa.govNot Your Father’s Web App: The Cloud-Native Architecture of images.nasa.gov
Not Your Father’s Web App: The Cloud-Native Architecture of images.nasa.gov
 
[AWS DC Meetup] Not Your Father’s WebApp: The Cloud-Native Architecture of im...
[AWS DC Meetup] Not Your Father’s WebApp: The Cloud-Native Architecture of im...[AWS DC Meetup] Not Your Father’s WebApp: The Cloud-Native Architecture of im...
[AWS DC Meetup] Not Your Father’s WebApp: The Cloud-Native Architecture of im...
 
An introduction to cloud systems architecture
An introduction to cloud systems architectureAn introduction to cloud systems architecture
An introduction to cloud systems architecture
 
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at DatabricksLessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks
 
Serverless Compose vs hurtownia danych
Serverless Compose vs hurtownia danychServerless Compose vs hurtownia danych
Serverless Compose vs hurtownia danych
 
The Cloud Journey in an Enterprise - IDC Multicloud - Stockholm November 20, ...
The Cloud Journey in an Enterprise - IDC Multicloud - Stockholm November 20, ...The Cloud Journey in an Enterprise - IDC Multicloud - Stockholm November 20, ...
The Cloud Journey in an Enterprise - IDC Multicloud - Stockholm November 20, ...
 
Traveloka's journey to no ops streaming analytics
Traveloka's journey to no ops streaming analyticsTraveloka's journey to no ops streaming analytics
Traveloka's journey to no ops streaming analytics
 
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with KubernetesKubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
Kubernetes Forum Seoul 2019: Re-architecting Data Platform with Kubernetes
 
Build A Scalable Mobile App
Build A Scalable Mobile App Build A Scalable Mobile App
Build A Scalable Mobile App
 
ML Platform Q1 Meetup: Airbnb's End-to-End Machine Learning Infrastructure
ML Platform Q1 Meetup: Airbnb's End-to-End Machine Learning InfrastructureML Platform Q1 Meetup: Airbnb's End-to-End Machine Learning Infrastructure
ML Platform Q1 Meetup: Airbnb's End-to-End Machine Learning Infrastructure
 
Scala services in action
Scala services in actionScala services in action
Scala services in action
 
Simply Business' Data Platform
Simply Business' Data PlatformSimply Business' Data Platform
Simply Business' Data Platform
 
Best of re:Invent 2016 meetup presentation
Best of re:Invent 2016 meetup presentationBest of re:Invent 2016 meetup presentation
Best of re:Invent 2016 meetup presentation
 
The Decoupled CMS in Financial Services
The Decoupled CMS in Financial ServicesThe Decoupled CMS in Financial Services
The Decoupled CMS in Financial Services
 
Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!
 
Idi2017 - Cloud DB: strengths and weaknesses
Idi2017 - Cloud DB: strengths and weaknessesIdi2017 - Cloud DB: strengths and weaknesses
Idi2017 - Cloud DB: strengths and weaknesses
 
Exposing Lambda Functions as Managed APIs
Exposing Lambda Functions as Managed APIsExposing Lambda Functions as Managed APIs
Exposing Lambda Functions as Managed APIs
 
MongoDB Evening Austin, TX 2017
MongoDB Evening Austin, TX 2017MongoDB Evening Austin, TX 2017
MongoDB Evening Austin, TX 2017
 
Serverless: Market Overview and Investment Opportunities
Serverless: Market Overview and Investment OpportunitiesServerless: Market Overview and Investment Opportunities
Serverless: Market Overview and Investment Opportunities
 

Kürzlich hochgeladen

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
AldoGarca30
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
chumtiyababu
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
mphochane1998
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 

Kürzlich hochgeladen (20)

Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planes
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
Wadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptxWadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptx
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 

The great migration embracing serverless first

  • 1. The Great Migration: Embracing Serverless First 1 Angela Timofte - Tech Lead @Trustpilot 15.10.2019
  • 2. 2 Agenda ● About Trustpilot ● Trustpilot’s history with Serverless development ● Challenges with Serverless architecture ● Advantages and wins of having a Serverless architecture ● Example of serverless architecture ● Lessons to share
  • 3. Founded in 2007 in Denmark 7 global offices and +700 employees
  • 4. Trustpilot in numbers +50 mil users & +70 mil reviews 1.8 mil reviews in September 2019 compared to 900.000 reviews 2 years ago
  • 5. Serverless at Trustpilot ● Initial release of Lambda functions in November 2014 @re:Invent ● Trustpilot’s stack at that time: C# .NET, MSSQL DB, MongoDB, EC2 ● Early 2014 we started decoupling our monolith service into context based services ● Transitioning from MSSQL DB to MongoDB
  • 6. The Serverless Native Mindset https://www.freecodecamp.org/news/serverless-is-cheaper-not-simpler-a10c4fc3 0e49/
  • 7. Serverless First 7 If serverless is not available or practical, containers are recommended. Virtual servers (EC2) are considered legacy and should be avoided. We do this because we strongly believe that serverless (FaaS, BaaS, DBaaS) is the future of the cloud and we’d like to be on the forefront of that movement. Serverless might not necessarily be the right choice for everything today, but start your architecture discussions there. We’re in the process of fading out virtual servers (EC2) and want to avoid creating new ones. The benefits of serverless and containers over virtual servers are diverse: cost savings, better scaling, better orchestration, reduction of operational costs and modernizing our cloud stack.
  • 10.
  • 12. Serverless is not just FAAS ● Serverless Databases: DynamoDB and Aurora Serverless @Trustpilot we started to adopt: ● DynamoDB around 2017 ● Aurora this year
  • 13.
  • 14.
  • 15. Infrastructure we run now Storage Mongo - 16 production clusters Redshift - 2 production clusters RDS - 10 production databases Redis - 3 production clusters ElasticSearch - 6 production clusters CloudSearch - 1 production domain Aurora - 14 production clusters DynamoDB - 109 production tables Services EC2 - 53 ECS - 329 Lambda - 371 S3 - 119 SQS ~450 production queues ~50M messages per day SNS ~250 production topics ~7.1M messages per day ~27M deliveries per day
  • 16. Challenges with Serverless architecture ● ● serverless mindset ● a lot of abstraction to learn ● local development ● limitations around execution time
  • 17. Advantages and wins of having a Serverless architecture ● Fewer developer logistics ● More time focused on writing code ● Inherently scalable. “Give me 1000 containers instantly” ● Never pay for idle resources
  • 18. Cost improvements ● image with percentages of how much it cost EC2 compute Lambda
  • 20. A problem to solve with a serverless approach ● Users signup with email ● They are created in our DB as un-activated accounts ● The users will receive an email to activate their account ● If they don’t activate in 30 days we need to delete their account from all of our systems
  • 21. Example of serverless architecture
  • 22. 22 Keep your serverless functions small and focused. You need to keep up with new technology but don’t jump on the bandwagon before you fully understand how to use it. Lessons that we learned Give your team time to learn and adopt the serverless mindset.