Week 09 - Solutions Architect Track - Serverless
Вставка
- Опубліковано 9 січ 2025
- This time in BeSA session, witness a role-play between a customer and an AWS expert evaluating serverless solutions. If you think Serverless = Just Lambda, then watch this session to understand the bigger picture. We will also go through analysis of some exam questions. See you 9 AM UK Time tomorrow (1st June). #besaprogram #Serverless #AWS #CloudComputing
Thank you to the BeSA team for hosting such an informative and engaging session. The quiz questions were insightful and helped reinforce the key concepts.
Great effort by Parna and ashish to explain such vast and complicated concepts. Was able to clear a lot of concepts including: difference between fully managed and serverless services, different methods to invoke lambda functions, architect of loosely coupled services and their advantages. Really liked the analogies, live demos and the question answer part. Kudos to BeSA team 👍
Here are the highlights of the Week 09 - Solutions Architect Track - Serverless:
- Serverless means AWS manages on servers and no burden for customer on infrastructure management
- Scaling is automatic , Pay for the use , only when you use
- Fully managed service Vs Server-less: All serverless are managed services BUT all managed services are not server less.
- AWS lambda is server less event driven computing architecture
- Serverless use cases (short running work loads like IT automation, Data processing, Suitable for Event driven architectures)
- Lambda has a time limit of 15 mins
- Analogy : Take a Gym membership instead of buying equipment so you pay for use.
- Synchronous ( sender and receiver both presents when passport and high costly item delivered),
- Asynchronous (receiver need not be present, mail delivery ) , This is kind of Decoupled architecture.
- lambda life cycle : invocation -> Lambda service -> Lambda function-> container runtime (Firecracker) -> Deliver results
- Advantages ( No servers to manage, Milli seconds billing, automatic scaling, Rich Ecosystem)
- Disadvantages: ( Max 15 minutes duration, max 10GB RAM, stateless, Potential cold start)
- Firecracker is the technology behind the lambda for creating container run times.
- New feature called Snap shots helps to reduce the cold start timings
- Lambda scaling quotas: 1000 concurrent max per region and can be increased,
1000 new concurrent execution per function per region, This CANT be increased.
- CPU is allocated based on the memory allocated to lambda functions
- Lambda can connect to traditional services like EC2 instance as well.
- Event Driven Architectures:
- EventBridge is router for events (events bus) , captured events , and calls down stream lambda
- Components of EB: producer, EventBroker, Consumer
- Event Brokers are two types: pull based and push based
- Pull based: Queues (SQS, AMQ), Streams ( Kinesis , Kafka)
- Push based: EventBridge, SNS
- EDA on AWS ( Messaging, Notifications, Choreography (Event Briddge), Orchestration (Step Functions)
Choreography: Event filtering
Orchestration: Sequencing, Parallel execution, state management
- Fan out pattern for pushing updates to multiple subscribers
- Placement Strategies: Cluster, Partition and Spread placement strategies.
- Amazon Athena for querying data in S3 bucket, Amazon QuickSight for visualisation.
- Amazon GLU is for ETL and Amazon kinesis data stream ingest the data at scale.
Analogy for Synchronous and Asynchronous super awesome!
Week 09- Done :) Lot new concepts along side Lambda, thanks
Analogy for serverless i can think of: in Summer , manufacturing compnies rent generators for backup for power supply , and they pay per use (per hour/day) , this can be analogy for serverless , they dont need to buy and maintain the generators
Good one.
@Kapil, How do we find you, if i have to mention you in my linkedin post?
www.linkedin.com/in/kapildwivedi/
Somehow, not clear on managed services and serverless, i guess, what makes unique use case for serverless is event-driven architecture
I agree line is blur, this is my way of defining it is below:
I pay for hosting and Infrastructure which is managed by cloud provider = Manged Service
Example - Amazon RDS. Even if no transactions are happening, I am paying the infrastructure cost (compute/storage/network)
I pay only for actual usage of a service which is manged by cloud provider = Serverless
Example - AWS Lambda. If there is no transaction happening, I am not paying for it.
S3 is a managed service or serverless?
Almost every serverless service is a managed service, but not every managed service is serverless. E.g. Lambda / API GW / Step Functions / Kinesis are all serverless and managed, but Amazon RDS, Amazon ECS, Amazon EKS are managed service but not serverless.
@@be-SA So, here S3 is managed service , right?