1. Lessons learned while going Serverless
in production
Mohamed Labouardy - Foxintelligence
2. Mohamed Labouardy
Lead DevOps Engineer/Software Engineer
Founder of Komiser - https://komiser.io
Open Source contributor: Docker, Jenkins, Telegraf, etc
DevSecOps Evangelist
@mlabouardy
https://labouardy.com
3. Detect Potential Cost Savings on Public Cloud
+2K stars +185K downloads
“Stay under budget by uncovering hidden
costs, monitoring increases in spend, and
making impactful changes based on custom
recommendations.”
https://komiser.io
4. How we do it ?
Millions of real online
transaction emails
anonymized and
processed in real time
from a panel of 2.5M
consumers
DATA ACQUISITION &
COLLECTION
Billions of datapoints
processed, cleaned and
enriched through
machine learning,
scrapping, and blending
DATA PROCESSING
& ENRICHMENT
Business acumen and
analytical skills combined
to provide
game-changing insights
to our clients on an
intuitive platform
DATA ANALYSIS
& VISUALIZATION
18. Testing
-
● SAM Local for testing locally
● Sandbox account for post-integrations tests
○ Best way to test is on the AWS infrastructure itself
● A/B testing with alias and weighted versions
● Performance testing for memory allocation
○ Apache benchmark
● Quality, unit & security tests included on CI/CD
AWS Lambda Power Tuning
30. Caching and Reuse
Best Practices Connecting from AWS Lambda - MongoDB Atlas
context.callbackWaitsForEmptyEventLoop=false
31. Serverless Hidden Costs
“Memory allocation can make a big difference in your
Lambda function cost. Too much allocated memory
and you’ll overpay. Too little and your function will be
at risk of failing. Therefore, you want to keep a healthy
balance when it comes to memory allocation.”
33. Key Takeaways
● Serverless or Containers? Why not both
● Be aware of Serverless hidden costs
● Start simple and iterate
● Adopt agile mindset
● Follow AWS best practices
● Share what you learn