SlideShare a Scribd company logo
Experiences in Architecting &
Implementing Platforms Using
Serverless
Srushith Repakula
Head of Engineering, KonfHub
AWS Serverless Hero
Srushith Repakula
AWS Serverless Hero
Head of Engineering at KonfHub
AWS UG Tirupati Lead
Host of ServerlessSaturdays
@SrushithR
Amazon SNS
Amazon
EventBridge
AWS Step
Functions
Amazon
Aurora
Serverless AWS
AppSync
RDS Proxy
AWS
Lambda
Amazon Kinesis
Data Streams
AWS Fargate
Amazon
Athena
Amazon
Elastic
File System
Amazon
Simple
Queue Service
Amazon S3
AWS Glue
Amazon Managed
Streaming for Kafka
Amazon
Timestream
Amazon Neptune
https://konf.me/sls-poll
@SrushithR
https://konf.me/sls-poll
As simple as that!
Serverless URL Shortener
https://github.com/SrushithR/Serverless-URL-Shortener
AWS
AppSync
Source: Twitter
Source: Twitter
@SrushithR
Highly
scalable
GraphQL APIs
Data Sync, Real Time
and offline capabilities
Fine grained
access control
Key Features
Lambda
RDS
DynamoDB
REST API
AppSync
Data Sources @SrushithR
Best Practices & Things to Remember
● There can be no public access - for the good!
● The maximum limit for expiry of API key is 365 days
● Quotas and limits
● Security best practices - using the correct authorization mode
based on the access patterns
● WAF in front of AppSync
● Turn off introspection - Schema not discoverable
In action!
@SrushithR
@SrushithR
The Pain Points
Network
accessibility
Cold starts Connection
management &
pooling
@SrushithR
Aurora
Serverless
@SrushithR
On demand, auto
scaling DB
Use of Data API* -
No problem of
Connection pooling
Cost saving*!
Key Features
Easy Peasy!
Best Practices and Things to Remember!
● Limitation on the number of connections: 1000 per second and 500 concurrently
● Understand Scaling Point and enable “Force Scaling” if needed
● Data API has a default timeout of 45 seconds. This can be increased
● Each transaction should run within 3 minutes
● Data size limitations - 64 KB per row and 1 MiB overall. Always account for pagination to
ensure the query doesn’t fail
So, does Aurora
Serverless V1 solve
everything
@SrushithR
Enter Aurora
Serverless V2
● Multi AZ support
● Read Replicas
● Much improved & granular
scaling
● Global databases
● Compatible with RDS
Proxy
What does Aurora Serverless V2 offer?
@SrushithR
● Missing Data API support
● Inability to scale down to 0
● Costlier in comparison
So, does V2 solve everything?
@SrushithR
Experiences in Architecting & Implementing Platforms using Serverless.pdf
Experiences in Architecting & Implementing Platforms using Serverless.pdf
Amazon EventBridge is a
serverless event bus that
makes it easier to build
event-driven applications
Design Patterns - Hub & Spoke Model
User Management
Checkout
Event &
Registrations
App Data
Payments
@SrushithR
Design Patterns - Hub & Spoke Model
User Management
Checkout
Event &
Registrations
App Data
Payments
@SrushithR
Payments
Checkout
Users
Management
App Data
Registrations
Notifications
@SrushithR
Design Patterns - Static Event Flow
Checkout
“Registration
Successful!”
@SrushithR
Design Patterns - Filtered Event Flow
Payments
Settlements Service
Registrations
Management Service
Amount details,
payment status
Registration details -
name, email etc
Failure notification
with order details
@SrushithR
Design Patterns - Transformed Event Flow
Checkout
Events &
Registrations
App Data
Payments
Trigger external
webhooks
@SrushithR
Best Practices and Things to Remember!
● Configure events (Matched, Part of matched, Constant, Transformed) based on the
downstream consumers
● Filter out data that is passed over to the consumers - especially payment or PII data
● Standardise event structuring for better filtering and routing - “metadata” and “data”
● At least once delivery with a 24 hour retry - build for idempotency
● Use EventBridge for microservices communications and SNS for internal service
communications
● Look at functionless integrations wherever possible
@SrushithR
AWS Step Functions is a
serverless orchestration service
that lets you combine AWS
Lambda functions and other AWS
services to build business-critical
applications
@SrushithR
Orchestration Parallel Processing Retry, time wait,
conditional execution
@SrushithR
Key Features
@SrushithR
Best Practices and Points to Remember!
● Choosing between standard and express workflows
● Leverage S3 instead of passing large payloads
● Use timeouts to avoid stuck executions
● Move out the retry, time wait, conditional execution from the application layer to step
function configuration
● Use task tokens to await for responses from 3rd party APIs
@SrushithR
Challenges & Lessons Learnt
● Lot of context in the architecture - a boon or a bane?
● Loosely coupled, difficult to get started and debug
● Keep an eye out for silent failures, especially in asynchronous invocations - use Lambda
Destinations
● Lambda functions can scale, but can your downstream services?
● DDoS* can happen, and you might not even know!
@SrushithR
Srushith Repkaula
Head of Engineering, KonfHub
AWS Serverless Hero
@SrushithR
Resources
1. https://medium.com/lego-engineering/the-power-of-amazon-eventbridge-is-in-its-detail-
92c07ddcaa40
2. https://acloudguru.com/blog/engineering/how-to-integrate-your-workload-with-slack-usin
g-amazon-eventbridge-api-destinations
3. https://aws.amazon.com/blogs/compute/using-amazon-rds-proxy-with-aws-lambda
4. https://acloudguru.com/blog/engineering/how-to-integrate-your-workload-with-slack-usin
g-amazon-eventbridge-api-destinations
5. https://github.com/SrushithR/realtime-polling-app
6. https://github.com/dabit3/this-or-that
7. https://serverlessland.com/patterns/eventbridge-sqs
8. https://aws.amazon.com/eventbridge/features/
9.
@SrushithR
Image and Icon Credits
1. API cartoon - https://auth0.com/blog/what-is-an-api-how-apis-work-for-non-developers/
2. Rest vs GraphQL - https://twitter.com/Rapid_API/status/1517497279145459712/photo/1
3. Icons made by <a href="https://www.flaticon.com/free-icon/flow_1160137" title="Kiranshastry">Kiranshastry</a> from <a
href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a>
4. <a href='https://www.freepik.com/vectors/music'>Music vector created by stories - www.freepik.com</a>
5. Icons made by <a href="https://www.flaticon.com/authors/smashicons" title="Smashicons">Smashicons</a> from <a
href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a>
6. Icons made by <a href="https://creativemarket.com/eucalyp" title="Eucalyp">Eucalyp</a> from <a href="https://www.flaticon.com/"
title="Flaticon"> www.flaticon.com</a>
7. Icons made by <a href="https://www.flaticon.com/free-icon/rocket_788195" title="prettycons">prettycons</a> from <a
href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a>
8. Icons made by <a href="http://www.freepik.com/" title="Freepik">Freepik</a> from <a href="https://www.flaticon.com/" title="Flaticon">
www.flaticon.com</a>
9. Icons made by <a href="https://www.flaticon.com/authors/becris" title="Becris">Becris</a> from <a href="https://www.flaticon.com/"
title="Flaticon"> www.flaticon.com</a>
10. Icons made by <a href="https://www.flaticon.com/authors/freepik" title="Freepik">Freepik</a> from <a href="https://www.flaticon.com/"
title="Flaticon"> www.flaticon.com</a>
11. Icons made by <a href="https://www.flaticon.com/authors/ddara" title="dDara">dDara</a> from <a href="https://www.flaticon.com/"
title="Flaticon"> www.flaticon.com</a>
12. Icons made by <a href="https://www.flaticon.com/authors/geotatah" title="geotatah">geotatah</a> from <a
href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a>
13. DB security - <a href="https://www.flaticon.com/free-icons/server" title="server icons">Server icons created by Freepik - Flaticon</a>
14. Cold start - <a href="https://www.flaticon.com/free-icons/temperature" title="temperature icons">Temperature icons created by
Smashicons - Flaticon</a>
15. DB connectivity - <a href="https://www.flaticon.com/free-icons/network" title="network icons">Network icons created by pmicon -
Flaticon</a>
Image and Icon Credits
1. Webhook - <a href="https://www.flaticon.com/free-icons/webhook" title="webhook icons">Webhook icons created by Freepik -
Flaticon</a>
2. Rest API - <a href="https://www.flaticon.com/free-icons/api" title="api icons">Api icons created by berkahicon - Flaticon</a>
3. User - <a href="https://www.flaticon.com/free-icons/user" title="user icons">User icons created by Freepik - Flaticon</a>

More Related Content

PDF
Serverless: Beyond Lambda Functions (V2)
PDF
re:Invent ARC307 - Serverless architectural patterns and best practices.pdf
PPTX
Build with Serverless Applications with azure functions By usama wahab Khan
PPTX
Primeros pasos en desarrollo serverless
PPTX
Serverless Generative AI on AWS, AWS User Groups of Florida
PPTX
Serverless Developer Experience I AWS Dev Day 2018
PDF
How LEGO.com Accelerates With Serverless
PDF
Serverless — it all started in Vegas
Serverless: Beyond Lambda Functions (V2)
re:Invent ARC307 - Serverless architectural patterns and best practices.pdf
Build with Serverless Applications with azure functions By usama wahab Khan
Primeros pasos en desarrollo serverless
Serverless Generative AI on AWS, AWS User Groups of Florida
Serverless Developer Experience I AWS Dev Day 2018
How LEGO.com Accelerates With Serverless
Serverless — it all started in Vegas

More from Srushith Repakula (16)

PDF
Building an AI-Powered Photo Gallery with Serverless and Event-Driven Magic!
PDF
How we scaled to 80K users by doing nothing!.pdf
PDF
Lessons Learned from Building a Serverless Notifications System.pdf
PDF
Serverless - Your Gateway to the Cloud!
PDF
Getting Started with Amazon EventBridge
PDF
CICD in the World of Serverless
PDF
Real Time Serverless Polling App
PPTX
Serverless Workshop - Tomato Restaurant Rating App
PPTX
Become Thanos of the LambdaLand: Wield all the Infinity Stones
PPTX
Serverless by Examples and Case Studies
PPTX
Lambda land: Running a serverless ticketing platform for less than $2 a month
PDF
AWS Lambda Hands-on: How to Create Phone Call Notifications in a Serverless Way
PPTX
Chatbots with Serverless
PPTX
Keep Calm and Code Python - Build Cool Stuff Uing Python
PPTX
Serverless: Why is it hot and What is it not?
PPTX
Scheduled Retweets Using AWS Lambda
Building an AI-Powered Photo Gallery with Serverless and Event-Driven Magic!
How we scaled to 80K users by doing nothing!.pdf
Lessons Learned from Building a Serverless Notifications System.pdf
Serverless - Your Gateway to the Cloud!
Getting Started with Amazon EventBridge
CICD in the World of Serverless
Real Time Serverless Polling App
Serverless Workshop - Tomato Restaurant Rating App
Become Thanos of the LambdaLand: Wield all the Infinity Stones
Serverless by Examples and Case Studies
Lambda land: Running a serverless ticketing platform for less than $2 a month
AWS Lambda Hands-on: How to Create Phone Call Notifications in a Serverless Way
Chatbots with Serverless
Keep Calm and Code Python - Build Cool Stuff Uing Python
Serverless: Why is it hot and What is it not?
Scheduled Retweets Using AWS Lambda
Ad

Recently uploaded (20)

PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
history of c programming in notes for students .pptx
PPT
Introduction Database Management System for Course Database
PPTX
Introduction to Artificial Intelligence
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Digital Strategies for Manufacturing Companies
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Nekopoi APK 2025 free lastest update
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
history of c programming in notes for students .pptx
Introduction Database Management System for Course Database
Introduction to Artificial Intelligence
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Upgrade and Innovation Strategies for SAP ERP Customers
Digital Strategies for Manufacturing Companies
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Understanding Forklifts - TECH EHS Solution
VVF-Customer-Presentation2025-Ver1.9.pptx
CHAPTER 2 - PM Management and IT Context
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Design an Analysis of Algorithms I-SECS-1021-03
Nekopoi APK 2025 free lastest update
Which alternative to Crystal Reports is best for small or large businesses.pdf
Wondershare Filmora 15 Crack With Activation Key [2025
How to Migrate SBCGlobal Email to Yahoo Easily
Ad

Experiences in Architecting & Implementing Platforms using Serverless.pdf

  • 1. Experiences in Architecting & Implementing Platforms Using Serverless Srushith Repakula Head of Engineering, KonfHub AWS Serverless Hero
  • 2. Srushith Repakula AWS Serverless Hero Head of Engineering at KonfHub AWS UG Tirupati Lead Host of ServerlessSaturdays
  • 4. Amazon SNS Amazon EventBridge AWS Step Functions Amazon Aurora Serverless AWS AppSync RDS Proxy AWS Lambda Amazon Kinesis Data Streams AWS Fargate Amazon Athena Amazon Elastic File System Amazon Simple Queue Service Amazon S3 AWS Glue Amazon Managed Streaming for Kafka Amazon Timestream Amazon Neptune
  • 6. As simple as that!
  • 11. @SrushithR Highly scalable GraphQL APIs Data Sync, Real Time and offline capabilities Fine grained access control Key Features
  • 13. Best Practices & Things to Remember ● There can be no public access - for the good! ● The maximum limit for expiry of API key is 365 days ● Quotas and limits ● Security best practices - using the correct authorization mode based on the access patterns ● WAF in front of AppSync ● Turn off introspection - Schema not discoverable
  • 16. The Pain Points Network accessibility Cold starts Connection management & pooling @SrushithR
  • 18. @SrushithR On demand, auto scaling DB Use of Data API* - No problem of Connection pooling Cost saving*! Key Features
  • 20. Best Practices and Things to Remember! ● Limitation on the number of connections: 1000 per second and 500 concurrently ● Understand Scaling Point and enable “Force Scaling” if needed ● Data API has a default timeout of 45 seconds. This can be increased ● Each transaction should run within 3 minutes ● Data size limitations - 64 KB per row and 1 MiB overall. Always account for pagination to ensure the query doesn’t fail
  • 21. So, does Aurora Serverless V1 solve everything @SrushithR Enter Aurora Serverless V2
  • 22. ● Multi AZ support ● Read Replicas ● Much improved & granular scaling ● Global databases ● Compatible with RDS Proxy What does Aurora Serverless V2 offer? @SrushithR
  • 23. ● Missing Data API support ● Inability to scale down to 0 ● Costlier in comparison So, does V2 solve everything? @SrushithR
  • 26. Amazon EventBridge is a serverless event bus that makes it easier to build event-driven applications
  • 27. Design Patterns - Hub & Spoke Model User Management Checkout Event & Registrations App Data Payments @SrushithR
  • 28. Design Patterns - Hub & Spoke Model User Management Checkout Event & Registrations App Data Payments @SrushithR
  • 30. Design Patterns - Static Event Flow Checkout “Registration Successful!” @SrushithR
  • 31. Design Patterns - Filtered Event Flow Payments Settlements Service Registrations Management Service Amount details, payment status Registration details - name, email etc Failure notification with order details @SrushithR
  • 32. Design Patterns - Transformed Event Flow Checkout Events & Registrations App Data Payments Trigger external webhooks @SrushithR
  • 33. Best Practices and Things to Remember! ● Configure events (Matched, Part of matched, Constant, Transformed) based on the downstream consumers ● Filter out data that is passed over to the consumers - especially payment or PII data ● Standardise event structuring for better filtering and routing - “metadata” and “data” ● At least once delivery with a 24 hour retry - build for idempotency ● Use EventBridge for microservices communications and SNS for internal service communications ● Look at functionless integrations wherever possible @SrushithR
  • 34. AWS Step Functions is a serverless orchestration service that lets you combine AWS Lambda functions and other AWS services to build business-critical applications @SrushithR
  • 35. Orchestration Parallel Processing Retry, time wait, conditional execution @SrushithR Key Features
  • 37. Best Practices and Points to Remember! ● Choosing between standard and express workflows ● Leverage S3 instead of passing large payloads ● Use timeouts to avoid stuck executions ● Move out the retry, time wait, conditional execution from the application layer to step function configuration ● Use task tokens to await for responses from 3rd party APIs @SrushithR
  • 38. Challenges & Lessons Learnt ● Lot of context in the architecture - a boon or a bane? ● Loosely coupled, difficult to get started and debug ● Keep an eye out for silent failures, especially in asynchronous invocations - use Lambda Destinations ● Lambda functions can scale, but can your downstream services? ● DDoS* can happen, and you might not even know! @SrushithR
  • 39. Srushith Repkaula Head of Engineering, KonfHub AWS Serverless Hero @SrushithR
  • 40. Resources 1. https://medium.com/lego-engineering/the-power-of-amazon-eventbridge-is-in-its-detail- 92c07ddcaa40 2. https://acloudguru.com/blog/engineering/how-to-integrate-your-workload-with-slack-usin g-amazon-eventbridge-api-destinations 3. https://aws.amazon.com/blogs/compute/using-amazon-rds-proxy-with-aws-lambda 4. https://acloudguru.com/blog/engineering/how-to-integrate-your-workload-with-slack-usin g-amazon-eventbridge-api-destinations 5. https://github.com/SrushithR/realtime-polling-app 6. https://github.com/dabit3/this-or-that 7. https://serverlessland.com/patterns/eventbridge-sqs 8. https://aws.amazon.com/eventbridge/features/ 9. @SrushithR
  • 41. Image and Icon Credits 1. API cartoon - https://auth0.com/blog/what-is-an-api-how-apis-work-for-non-developers/ 2. Rest vs GraphQL - https://twitter.com/Rapid_API/status/1517497279145459712/photo/1 3. Icons made by <a href="https://www.flaticon.com/free-icon/flow_1160137" title="Kiranshastry">Kiranshastry</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 4. <a href='https://www.freepik.com/vectors/music'>Music vector created by stories - www.freepik.com</a> 5. Icons made by <a href="https://www.flaticon.com/authors/smashicons" title="Smashicons">Smashicons</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 6. Icons made by <a href="https://creativemarket.com/eucalyp" title="Eucalyp">Eucalyp</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 7. Icons made by <a href="https://www.flaticon.com/free-icon/rocket_788195" title="prettycons">prettycons</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 8. Icons made by <a href="http://www.freepik.com/" title="Freepik">Freepik</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 9. Icons made by <a href="https://www.flaticon.com/authors/becris" title="Becris">Becris</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 10. Icons made by <a href="https://www.flaticon.com/authors/freepik" title="Freepik">Freepik</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 11. Icons made by <a href="https://www.flaticon.com/authors/ddara" title="dDara">dDara</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 12. Icons made by <a href="https://www.flaticon.com/authors/geotatah" title="geotatah">geotatah</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a> 13. DB security - <a href="https://www.flaticon.com/free-icons/server" title="server icons">Server icons created by Freepik - Flaticon</a> 14. Cold start - <a href="https://www.flaticon.com/free-icons/temperature" title="temperature icons">Temperature icons created by Smashicons - Flaticon</a> 15. DB connectivity - <a href="https://www.flaticon.com/free-icons/network" title="network icons">Network icons created by pmicon - Flaticon</a>
  • 42. Image and Icon Credits 1. Webhook - <a href="https://www.flaticon.com/free-icons/webhook" title="webhook icons">Webhook icons created by Freepik - Flaticon</a> 2. Rest API - <a href="https://www.flaticon.com/free-icons/api" title="api icons">Api icons created by berkahicon - Flaticon</a> 3. User - <a href="https://www.flaticon.com/free-icons/user" title="user icons">User icons created by Freepik - Flaticon</a>