AWS Bites

AWS Bites is the weekly show where we answer questions about AWS! This show is brought to you be Eoin Shanaghy and Luciano Mammino, certified AWS experts.

135. Serverless is making a comeback where you least expect it

In this episode, we discuss the pros and cons of using serverless architecture in enterprise companies. We cover topics like cost, complexity, security, ability to evolve architecture, and more. Overall, we find that serverless can provide benefits like reduced operational costs, improved developer productivity, and increased focus on core business logic for larger companies. AWS Bites is sponsored by fourTheorem, an Advanced AWS partner that works collaboratively with you and sets you up for long-term success on AWS. Find out more at fourtheorem.com In this episode, we mentioned the following resources: - Yan Cui - “Even simple serverless applications have complex architecture diagrams”, so what? - Dark Matter Developers: The Unseen 99% - Deloitte - Determining the Total Cost of Ownership of Serverless Technologies when compared to Traditional Cloud (PDF) - Generating Value Through IT Agility and Business Scalability with AWS Serverless Platform (Gated Link) Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X/Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

11-15
21:46

134. Eliminate the IAM User

In this episode, we discuss why IAM users and long-lived credentials are dangerous and should be avoided. We share war stories of compromised credentials and overprivileged access. We then explore solutions like centralizing IAM users, using tools like AWS Vault for temporary credentials, integrating with AWS SSO, and fully eliminating IAM users when possible. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem. If you are looking for a partner to architect, develop and modernise on AWS, give fourTheorem a call. Check out ⁠⁠https://fourtheorem.com⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠. In this episode, we mentioned the following resources: Episode 118 "The landing zone: Managing multiple AWS accounts": https://awsbites.com/118-the-landing-zone-managing-multiple-aws-accounts/ Episode 96: "AWS Governance and Landing Zone with Control Tower, Org Formation, and Terraform" https://awsbites.com/96-aws-governance-and-landing-zone-with-control-tower-org-formation-and-terraform/ Datadog Security Report (IAM stats): https://www.datadoghq.com/state-of-cloud-security/ Credentials provider chain in the JavaScript SDK: https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html Credentials provider chain in the AWS CLI: https://docs.aws.amazon.com/cli/v1/userguide/cli-chap-authentication.html Episode 45 "What’s the magic of OIDC identity providers?": https://awsbites.com/45-what-s-the-magic-of-oidc-identity-providers/ Episode 112 "What is a Service Control Policy (SCP)?": https://awsbites.com/112-what-is-a-service-control-policy-scp Episode 115 "What can you do with Permissions Boundaries?": https://awsbites.com/115-what-can-you-do-with-permissions-boundaries/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

11-01
28:15

133. Building Businesses in the Cloud with Fiona McKenna

In this special episode of AWS Bites, Eoin is joined by Fiona McKenna, co-founder and CFO of fourTheorem, to discuss startup advice, hiring and growing teams, creating an environment for success, and managing cloud costs. They cover important themes around people, culture, leadership, and finance from Fiona's extensive experience in the tech industry. 💰 SPONSORS 💰 AWS Bites is sponsored by fourTheorem, an Advanced AWS partner that works collaboratively with you and sets you up for long-term success on AWS. Find out more at https://fourtheorem.com. 🔖 Chapters: 00:00 Intro 02:28 Advice on hiring and growing teams 06:00 Challenges in recruiting the right people 09:06 Advice for startups growing from small to large teams 12:53 More general advice for startups 18:25 Are cloud economics understood by CFOs and finance leaders? 21:42 Advice for large companies migrating to the cloud 25:35 Tips for starting an AWS consultancy 28:32 Closing notes Find Fiona on LinkedIn: https://www.linkedin.com/in/fiona-mc-kenna-174172a2 Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - https://twitter.com/eoins - https://twitter.com/loige

10-17
28:28

132. GitHub Action Runners on AWS

In this episode, we provided an overview of GitHub Action Runners and discussed the benefits of using self-hosted runners on AWS. We covered options including EC2 and CodeBuild for running GitHub Actions, compared pricing across solutions, and shared our hands-on experience setting things up. Overall, using AWS services can provide more control, lower latency, and cost optimization compared to GitHub hosted runners. 💰 SPONSORS 💰 AWS Bites is sponsored by fourTheorem, an Advanced AWS partner that works collaboratively with you and sets you up for long-term success on AWS. Find out more at ⁠fourtheorem.com⁠. The source code for the project we discussed is available on GitHub: ⁠fourTheorem/codebuild-gha-runners⁠! In this episode, we mentioned the following resources. ⁠Cloudonaut - Self-Hosted GitHub Runners on AWS⁠ ⁠AWS: Best Practices for Working with Self-Hosted GitHub Action Runners at Scale on AWS⁠ ⁠GitHub - philips-labs/terraform-aws-github-runner⁠ ⁠GitHub - garysassano/cdktf-aws-codebuild-github-runners-organization⁠ ⁠GitHub - machulav/ec2-github-runner⁠ ⁠AWS CodeBuild Managed Self-Hosted GitHub Action Runners⁠ ⁠HyperEnv - Self-hosted GitHub runners on AWS⁠ ⁠RunsOn - Self-hosted runners on AWS⁠ ⁠Actions Runner Controller for Kubernetes⁠ ⁠Biome⁠ ⁠SLIC Watch⁠ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

10-03
24:40

131. What do you do about CloudFormation Drift?

In this episode, we discuss the concept of CloudFormation drift, what causes it, how to detect it, and strategies for resolving it. We explain that drift happens when the actual state of resources diverges from what is defined in the CloudFormation templates. Common causes include manual changes, third party tools, mixing IaC solutions, and automation. We then cover built-in drift detection in CloudFormation and integrating it with alarms. Finally, we suggest approaches for reconciling drift like change sets, deletion protection, and bringing up parallel stacks. 💰 SPONSORS 💰 This episode of AWS Bites is brought to you by fourTheorem. Need to modernize your infrastructure or build scalable cloud solutions? fourTheorem brings the experience to build high-quality, maintainable, and scalable cloud applications that evolve with your business needs. Visit ⁠https://fourtheorem.com⁠⁠⁠⁠⁠⁠⁠⁠⁠ to see how we can help take your cloud journey to the next level. In this episode, we mentioned the following resources: Ep 31 - CloudFormation or Terraform: https://awsbites.com/31-cloudformation-or-terraform/ Ep. 121 - 5 Ways to extend CloudFormation: https://awsbites.com/121-5-ways-to-extend-cloudformation/ Automatic Drift detection (AWS tutorial): https://aws.amazon.com/blogs/mt/implementing-an-alarm-to-automatically-detect-drift-in-aws-cloudformation-stacks Ep. 11 - How do you move away from the management console: https://awsbites.com/11-how-do-you-move-away-from-the-management-console/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

09-19
19:44

130. Growing in Tech with Farrah Campbell

In this episode, we had the pleasure to interview Farrah Campbell, head of modern compute community at AWS, prolific speaker, and former AWS Hero. We discussed Farrah's career journey from healthcare into tech, tips on public speaking, dealing with imposter syndrome, the pace of innovation in the cloud, and predictions for the future. Farrah shared personal stories and advice for getting started in tech and being an active member of the community. It was inspiring to hear from someone so passionate about helping others learn and grow. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem. If you are looking for a partner to architect, develop and modernise on AWS, give fourTheorem a call. Check out https://fourtheorem.com⁠⁠⁠⁠⁠ . In this episode, we mentioned the following resources: Farrah's favourite AWS Bites episode with Jeremy Daly: https://awsbites.com/102-getting-ampt-with-jeremy-daly/ Farrah on X (Twitter): https://x.com/FarrahC32 Farrah on Linkedin: https://www.linkedin.com/in/farrahcampbell/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

09-05
29:55

129. Lambda Provisioned Concurrency

In this episode, we discuss AWS Lambda provisioned concurrency. We start with a recap of Lambda cold starts and the different concurrency control options. We then explain how provisioned concurrency works to initialize execution environments in advance to avoid cold starts. We cover how to enable it, pricing details, common issues like over/under-provisioning, and alternatives like self-warming functions or using other services like ECS and Fargate. 💰 SPONSORS 💰 This episode of AWS Bites is powered by fourTheorem. Whether you're looking to architect, develop, or modernize on AWS, fourTheorem has you covered. Ready to take your cloud game to the next level? Head to ⁠⁠⁠⁠https://fourtheorem.com⁠⁠⁠⁠⁠ to check out our in-depth articles, and case studies, and see how we can help transform your AWS journey. In this episode, we mentioned the following resources: Episode 60: "What is AWS Lambda": https://awsbites.com/60-what-is-aws-lambda/ Episode 104: "Explaining AWS Lambda Runtimes": https://awsbites.com/104-explaining-lambda-runtimes/ Episode 108: "Solving Lambda Cold Starts in Python": https://awsbites.com/108-how-to-solve-lambda-python-cold-starts/ Episode 120: "Lambda Best Practices": https://awsbites.com/120-lambda-best-practices/ AWS Lambda Concurrency Explained by James Eastham: https://www.youtube.com/watch?v=KHACnNKTefI Provisioned Concurrency pricing: https://aws.amazon.com/lambda/pricing/#Provisioned_Concurrency_Pricing Less than 1% of invocations are cold-starts (statement): https://docs.aws.amazon.com/lambda/latest/operatorguide/execution-environments.html Middy Warmup Middleware: https://middy.js.org/docs/middlewares/warmup/ Lambda speculative warm-up init (mention in the Docs): https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtime-environment.html#:~:text=For%20functions%20using,on%20this%20behavior. Episode 64: "How do you write Lambda Functions in Rust": https://awsbites.com/64-how-do-you-write-lambda-functions-in-rust Episode 128: "Writing a book about Rust and Lambda": https://awsbites.com/128-writing-a-book-about-rust-and-lambda/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

08-22
22:17

128. Writing a book about Rust & Lambda

In this episode, we discuss Luciano's new book project on using Rust to write AWS Lambda functions. We start with a recap on why Rust is a good fit for Lambda, including performance, efficiency, safety, and low cold start times. Luciano provides details on the book's progress so far, the intended audience, and the current published chapters covering Lambda internals, getting started with Rust Lambda, and building a URL shortener app with DynamoDB. We also explore the differences between traditional publishing and self-publishing, and why Luciano chose the self-publishing route for this book. Luciano shares insights into the writing process with AsciiDoc, code samples, SVG image generation, and using Gumroad for distribution. He invites feedback from listeners who have experience with Rust and Lambda. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem. If you are looking for a partner to architect, develop and modernise on AWS, give fourTheorem a call. We have also been working with some of our customers to rewrite some of their most used Lambda functions in Rust, greatly reducing cost and improving performance. If all of this sounds interesting, check us out at ⁠⁠⁠https://fourtheorem.com⁠⁠⁠ In this episode, we mentioned the following resources: Our previous episode "64. How do you write Lambda Functions in Rust?": https://awsbites.com/64-how-do-you-write-lambda-functions-in-rust Crafting Lambda Functions in Rust book's website: https://rust-lambda.com/ The official Rust book (available for free): https://doc.rust-lang.org/book/ James Eastham awesome YouTube channel: https://www.youtube.com/@serverlessjames AI as a Service book: https://www.manning.com/books/ai-as-a-service Node.js Design Patterns book: https://www.nodejsdesignpatterns.com/ Liran Tal's awesome AsciiDoc book starter template: https://github.com/lirantal/asciidoc-book-starter Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

07-25
26:58

127. Which Load Balancer should you use?

An overview of load balancers, explaining how they distribute traffic across multiple servers and provide high availability. We discuss layer 4 and layer 7 load balancers, detailing their pros and cons. We then focus on AWS load balancers, covering network load balancers and application load balancers in depth, including their features, use cases, and pricing models. We conclude by mentioning some alternatives to AWS load balancers. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem an AWS consulting partner with tons of experience with AWS. If you need someone to help you with your ambitions AWS projects, check out ⁠⁠https://fourtheorem.com⁠⁠ In this episode, we mentioned the following resources: Our previous episode "88. What is VPC Lattice?": https://awsbites.com/88-what-is-vpc-lattice/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

07-11
24:47

126. Bastion Containers

This episode discusses solutions for securely accessing private VPC resources for debugging and troubleshooting. We cover traditional approaches like bastion hosts and VPNs and newer solutions using containers and AWS services like Fargate, ECS, and SSM. We explain how to set up a Fargate task with a container image with the necessary tools, enable ECS integration with SSM, and use SSM to start remote shells and port forwarding tunnels into the container. This provides on-demand access without exposing resources on the public internet. We share a Python script to simplify the process. We suggest ideas for improvements like auto-scaling the container down when idle. Overall, this lightweight containerized approach can provide easy access for debugging compared to managing EC2 instances. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem an AWS consulting partner with tons of experience with AWS. If you need someone to help you with your ambitions AWS projects, check out ⁠https://fourtheorem.com⁠ In this episode, we mentioned the following resources: Our previous episode "78. When do you need a bastion host?": https://awsbites.com/78-when-do-you-need-a-bastion-host Basti - Securely connect to RDS, Elasticache, and other AWS resources in VPCs with no idle cost: https://github.com/basti-app/basti Our gist with a Python script you can adjust to your needs: https://gist.github.com/eoinsha/157f6d869d0033f80a8da5757e8781f7 Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

06-27
13:30

125. A first look at CloudFront Hosting Toolkit

In this episode, we discuss the newly announced CloudFront Hosting Toolkit from AWS. We provide an overview of the tool, which aims to simplify deploying modern front-end applications to AWS while retaining infrastructure control. We discuss the current capabilities and limitations and share our hands-on experiences trying out the tool. We also talk about alternatives like Vercel and Amplify, and the tradeoffs between convenience VS control. Overall, the toolkit shows promise but is still early-stage. We are excited to see it evolve to support more frameworks and use cases. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem an AWS consulting partner with tons of experience with AWS. If you need someone to help you with your ambitions AWS projects, check out https://fourtheorem.com In this episode, we mentioned the following resources: CloudFront Hosting Toolkit official announcement: https://aws.amazon.com/blogs/networking-and-content-delivery/introducing-cloudfront-hosting-toolkit/ Previous episode "80. Can you do private static websites on AWS?": https://awsbites.com/80-can-you-do-private-static-websites-on-aws/ Previous episode "3. How do you deploy a static website on AWS?": https://awsbites.com/3-how-do-you-deploy-a-static-website-on-aws/ CloudFront functions: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-functions.html CloudFront Key-Value Store: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/kvs-with-functions.html Sandro Volpicella's article on CloudFront Hosting Toolkit: https://blog.awsfundamentals.com/cloudfront-hosting-toolkit Open Next: https://open-next.js.org/ Coolify: https://coolify.io/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

06-13
33:36

124. S3 Performance

In this episode, we discuss some tips and tricks for optimizing performance when working with Amazon S3 at scale. We start by giving an overview of how S3 works, highlighting the distributed nature of the service and how data is stored redundantly across multiple availability zones for durability. We then dive into specific tips like using multipart uploads and downloads, spreading the load across key namespaces, enabling transfer acceleration, and using S3 byte-range fetches. Overall, we aim to provide developers building S3-intensive applications with practical guidance to squeeze the most performance out of the service. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem an AWS consulting partner with tons of experience with S3. If you need someone to work with to optimise your S3-based workloads, check out at ⁠⁠⁠⁠⁠⁠fourtheorem.com⁠⁠⁠⁠⁠⁠! In this episode, we mentioned the following resources: Our previous episode on S3 best practices: https://awsbites.com/83-bucket-list-of-s3-best-practices “Deep dive on Amazon S3” (re:Invent talk from 2021): https://www.youtube.com/watch?v=FJJxcwSfWYg More recent re:Invent talk on Amazon S3 (with updated data) - We discovered this one just after the recording: https://youtu.be/sYDJYqvNeXU Multi-part upload user guide: https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html Code examples from the SDK (high-level and low-level APIs): https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpu-upload-object.html Node.js official helper library (@aws-sdk/lib-storage): https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-lib-storage/ Example on how you can implement byte-range fetches: https://docs.aws.amazon.com/AmazonS3/latest/userguide/example_s3_Scenario_UsingLargeFiles_section.html s3-getobject-accelerator library: https://github.com/widdix/s3-getobject-accelerator aws-c-s3 library: https://github.com/awslabs/aws-c-s3 S3 storage lens: https://aws.amazon.com/s3/storage-lens/ Docs on S3 Transfer Accelerator: https://docs.aws.amazon.com/AmazonS3/latest/userguide/transfer-acceleration-examples.html Performance Guidelines for Amazon S3: https://docs.aws.amazon.com/AmazonS3/latest/userguide/optimizing-performance-guidelines.html Performance Design Patterns for Amazon S3: https://docs.aws.amazon.com/AmazonS3/latest/userguide/optimizing-performance-design-patterns.html Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

05-30
20:05

123. What do you need to know about DynamoDB?

In this episode, we provide a comprehensive overview of DynamoDB, including how it compares to relational databases, when to use it, how to get started, writing and querying data, secondary indexes, and single table design. We share our experiences using DynamoDB and discuss the pros and cons compared to traditional SQL databases. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem. If you need someone to work with you to build the best-designed, highly available database on AWS, give us a shout. Check us out on ⁠⁠⁠⁠⁠fourtheorem.com⁠⁠⁠⁠⁠! In this episode, we mentioned the following resources: Our previous episode "122. Amazing Databases with Aurora": https://awsbites.com/122-amazing-databases-with-aurora/ Configurable Maximum Throughput on On-Demand tables: https://aws.amazon.com/about-aws/whats-new/2024/05/dynamodb-configurable-maximum-throughput-on-demand-tables/ Best practices for designing and using partition keys effectively: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-partition-key-design.html#bp-partition-key-partitions-adaptive The DynamoDB Book: https://dynamodbbook.com/ Alex DeBrie’s podcast / YouTube (not about DynamoDB per se but still worth a shout!): https://www.youtube.com/@SoftwareHuddle One of Rick Houlihan’s talks on DynamoDB: https://www.youtube.com/watch?v=xfxBhvGpoa0 Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠⁠

05-16
35:45

122. Amazing Databases with Aurora

In this episode, we provide an overview of Amazon Aurora, a relational database solution on AWS. We discuss its unique capabilities like distinct storage architecture for better performance and faster recovery. We cover concepts like Aurora clusters, reader and writer instances, endpoints, and global databases. We also compare the serverless versions V1 and V2, noting that V2 is more enterprise-ready while V1 scales to zero. We touch on billing and additional features like the data API, RDS query editor, and RDS proxy. Overall, Aurora is powerful and scalable but not trivial to use at global scale. It's best for serious enterprise use cases or variable traffic workloads. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem. If you need someone to work with you to build the best-designed, highly available database on AWS, give us a shout. Check us out on ⁠⁠⁠⁠fourtheorem.com⁠⁠⁠⁠! In this episode, we mentioned the following resources: Amazon Relational Database Service (RDS): https://aws.amazon.com/rds/ Amazon RDS Aurora: https://aws.amazon.com/rds/aurora/ RDS Aurora Serverless: https://aws.amazon.com/rds/aurora/serverless/ Cost calculator for cost comparison: https://calculator.aws/#/estimate?id=4f950b71be8b31438dd12c7aebc9beae3f88179e Cloudonaut podcast and blog post about Aurora Serverless V2: https://cloudonaut.io/review-aurora-serverless-v2/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠⁠

05-02
28:57

121. 5 Ways to extend CloudFormation

In this episode, we discuss 5 different ways to extend CloudFormation capabilities beyond what it natively supports. We started with a quick recap of what CloudFormation is and why we might need to extend it. We then covered using custom scripts and templating engines, which can be effective but require extra maintenance. We recommended relying instead on tools like Serverless Framework, SAM, and CDK which generate CloudFormation templates but provide abstractions and syntax improvements. When you need custom resources, CloudFormation macros allow pre-processing templates, while custom resources and the CloudFormation registry allow defining new resource types. We summarized recommendations for when to use each approach based on our experience. Overall, we covered multiple options for extending CloudFormation to support more complex infrastructure needs. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem, an AWS Partner that specialises in modern application architecture and migration. If you are curious to find out more and to work with us, check us out on ⁠⁠⁠fourtheorem.com⁠⁠⁠! In this episode, we mentioned the following resources: Ep. 31 "Cloudformation or Terraform": https://awsbites.com/31-cloudformation-or-terraform/ Serverless Framework: https://www.serverless.com/ SAM (Serverless Application Model): https://aws.amazon.com/serverless/sam/ CDK (Cloud Development Kit): https://aws.amazon.com/cdk/ Ep. 119 "The state of AWS 2024 (AnsWeRS community survey commentary)": https://awsbites.com/119-the-state-of-aws-2024-answers-community-survey-commentary/ Ep. 93 "CDK Patterns - The Good, The Bad and The Ugly": https://awsbites.com/93-cdk-patterns-the-good-the-bad-and-the-ugly/ SLIC Watch: https://github.com/fourTheorem/slic-watch AWS SSO Utils by Ben Kehoe: https://github.com/benkehoe/aws-sso-util JavaScript library to safely create custom CloudFormaion resources: https://www.npmjs.com/package/safe-cfn-custom-resource Clouformation CLI: https://github.com/aws-cloudformation/cloudformation-cli Cloudformation CLI docs: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html Cloudonaut podcast "3½ ways to workaround missing CloudFormation support": https://cloudonaut.io/three-and-a-half-ways-to-workaround-missing-cloudformation-support/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠

04-18
30:20

120. Lambda Best Practices

In this episode, we discuss best practices for working with AWS Lambda. We cover how Lambda functions work under the hood, including cold starts and warm starts. We then explore different invocation types - synchronous, asynchronous, and event-based. For each, we share tips on performance, cost optimization, and monitoring. Other topics include function structure, logging, instrumentation, and security. Throughout the episode, we aim to provide a solid mental model for serverless development and share our experiences to help you build efficient and robust Lambda applications. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem, an AWS Partner that specialises in modern application architecture and migration. We are big fans of serverless and we have worked on quite a few serverless projects even at a massive scale! If you are curious to find out more and to work with us, check us out at ⁠⁠fourtheorem.com⁠⁠! In this episode, we mentioned the following resources: Ep. 110 "110. Why should you use Lambda for Machine Learning?": https://awsbites.com/110-why-should-you-use-lambda-for-machine-learning/ Ep. 108 "How to Solve Lambda Python Cold Starts": https://awsbites.com/108-how-to-solve-lambda-python-cold-starts/ Ep. 104 "Explaining Lambda Runtimes": https://awsbites.com/104-explaining-lambda-runtimes/ Ep. 92 "Decomposing the Monolith Lambda": https://awsbites.com/92-decomposing-the-monolith-lambda/ Ep 64 "How do you write Lambda Functions in Rust?": https://awsbites.com/64-how-do-you-write-lambda-functions-in-rust/ Ep 65 "Solving SQS and Lambda concurrency problems": https://awsbites.com/65-solving-sqs-and-lambda-concurrency-problems/ Ep 10 "Lambda or Fargate for containers?": https://awsbites.com/10-lambda-or-fargate-for-containers/ Ep 4. "What language should you use for Lambda?": https://awsbites.com/4-what-language-should-you-use-for-lambda/ Ep 6. "Is AWS Lambda cheap or expensive?": https://awsbites.com/6-is-aws-lambda-cheap-or-expensive/ Article: "What do you need to know about SNS?": https://fourtheorem.com/what-do-you-need-to-know-about-sns/ Article: "What can you do with EventBridge": https://fourtheorem.com/what-can-you-do-with-eventbridge/ Article: "What do you need to know about SQS?": https://fourtheorem.com/what-do-you-need-to-know-about-sqs/ Yan Cui's video about using Lambda Destinations instead of DLQs: https://www.youtube.com/watch?v=hOetf6YN3zo Profiling functions with AWS Lambda Power Tuning: https://docs.aws.amazon.com/lambda/latest/operatorguide/profile-functions.html Blog post by Luca Mezzalira about hexagonal architectures for Lambda: https://aws.amazon.com/blogs/compute/developing-evolutionary-architecture-with-aws-lambda/ Ep 41 "How can Middy make writing Lambda functions easier?": https://awsbites.com/41-how-can-middy-make-writing-lambda-functions-easier/ SLIC Watch for automated dashboards and alarms: https://github.com/fourTheorem/slic-watch Ep 35 "How can you become a Logs Ninja with CloudWatch?": https://awsbites.com/35-how-can-you-become-a-logs-ninja-with-cloudwatch/ Ep 34 "How to get the most out of CloudWatch Alarms?": https://awsbites.com/34-how-to-get-the-most-out-of-cloudwatch-alarms/ Ep 33 "What can you do with CloudWatch metrics?": https://awsbites.com/33-what-can-you-do-with-cloudwatch-metrics/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠

04-04
26:22

119. The state of AWS 2024 (AnsWeRS community survey commentary)

In this episode, we provide commentary and analysis on the 2024 AWS Community Survey results. We go through the key findings for each area including infrastructure as code, CI/CD, serverless, containers, NoSQL databases, event services, and AI/ML. While recognizing potential biases, we aim to extract insights from the data and share our perspectives based on experience. Overall, we see increased adoption across many services, though some pain points remain around developer experience. We hope this format provides value to listeners interested in cloud technology trends. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem, an AWS Partner that does CLOUD stuff really well, check us out on ⁠fourtheorem.com⁠! In this episode, we mentioned the following resources: The 2024 Answers for AWS Survey results: https://answersforaws.com/2024 "GitHub Actions Feels Bad" by fasterthanlime (video): https://www.youtube.com/watch?v=9qljpi5jiMQ "Doing serverless with Terraform": https://serverless.tf/ Our event services series (YouTube playlist): https://www.youtube.com/playlist?list=PLAWXFhe0N1vLHkGO1ZIWW_SZpturHBiE_ Our previous episode about machine learning and SageMaker "How to automate transcripts with Amazon Transcribe and OpenAI Whisper": https://awsbites.com/63-how-to-automate-transcripts-with-amazon-transcribe-and-openai-whisper/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠

03-22
39:34

118. The landing zone: Managing multiple AWS accounts

In this episode, we provide an introductory overview of AWS's best practices for managing infrastructure using multiple accounts under an organization. We discuss the advantages of this approach and how to get started creating your own multi-account environment, or "landing zone". 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem, an AWS Partner that does CLOUD stuff well, including helping you set up your AWS organisation! If that’s something you are looking for, go to fourtheorem.com to read more about us and to get in touch! In this episode, we mentioned the following resources: AWS Definition of Landing Zone: https://docs.aws.amazon.com/prescriptive-guidance/latest/strategy-migration/aws-landing-zone.html Series of articles "Managing AWS accounts like a PRO": https://fourtheorem.com/managing-aws-accounts-part-1/ AWS Organizations service: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html IAM Identity Center service: https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html Control Tower: https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html org-formation: https://github.com/org-formation/org-formation-cli Our previous episode "AWS Governance and landing zone with Control Tower, OrgFormation and Terraform": https://awsbites.com/96-aws-governance-and-landing-zone-with-control-tower-org-formation-and-terraform granted.dev: https://granted.dev AWS SSO util: https://github.com/benkehoe/aws-sso-util Leapp: https://www.leapp.cloud/ Cloud Glance: https://cloudglance.dev/ Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠

03-15
25:48

117. What do EBS and a jellyfish have in common?

In this episode, we provide an overview of Amazon EBS, which stands for Elastic Block Storage. We explain what block storage is and how EBS provides highly available and high-performance storage volumes that can be attached to EC2 instances. We discuss the various EBS volume types, including GP3, GP2, provisioned IOPS, and HDD volumes, and explain how they differ in performance characteristics like IOPS and throughput. We go over important concepts like IOPS, throughput, and volume types so listeners can make informed decisions when provisioning EBS. We also cover EBS features like snapshots, encryption, direct API access, and ECS integration. Overall, this is a comprehensive guide to understanding EBS and choosing the right options based on your workload needs. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem, an AWS Partner that does CLOUD stuff really well. Go to fourtheorem.com to read about our case studies! In this episode, we mentioned the following resources: EBS Official Documentation: https://docs.aws.amazon.com/ebs/latest/userguide/what-is-ebs.html EBS Direct Access API: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html EBS internal configuration is implemented as “millions of tiny databases” (paper): https://www.amazon.science/publications/millions-of-tiny-databases EBS Pricing examples: https://aws.amazon.com/ebs/pricing/#Pricing_examples Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠

03-08
21:03

116. What is RAM (Resource Access Manager)?

In this episode, we discuss AWS Resource Access Manager (RAM) and how it can be used to securely share AWS resources like VPC subnets, databases, and SSM parameters across accounts. We explain the benefits of using RAM over other options like resource policies and assumed roles. Some key topics covered include how to get started with RAM, how it works from the resource owner and resource participant side, and common use cases like sharing VPC subnets, Aurora databases, and SSM parameters. 💰 SPONSORS 💰 AWS Bites is brought to you by fourTheorem, the AWS consulting partner with lots of experience with AWS, Serverless, and Lambda. If you are looking for a partner that can help you deliver your next Serverless workload successfully, look no further and reach out to us at ⁠⁠⁠⁠⁠https://fourTheorem.com⁠⁠⁠⁠⁠ In this episode, we mentioned the following resources: Sharing Aurora Databases with RAM (Conor Maher's article): https://fourtheorem.com/using-aws-resource-access-manager-for-development/ Blog post "VPC Lattice: The Future of AWS Networking Explained": https://fourtheorem.com/vpc-lattice/ Our previous episode dedicated to VPC Lattice: https://awsbites.com/88-what-is-vpc-lattice/ VPC Lattice sample code base: https://github.com/fourTheorem/vpc-lattice-demo Sharing AWS Systems Manager Parameters official announcement: https://aws.amazon.com/about-aws/whats-new/2024/02/aws-systems-manager-parameter-store-cross-account-sharing/ Official documentation for what can be shared with RAM: https://docs.aws.amazon.com/ram/latest/userguide/shareable.html Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on X, formerly Twitter: - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/eoins⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠ - ⁠⁠⁠⁠⁠⁠⁠⁠⁠⁠https://twitter.com/loige⁠⁠

03-01
13:45

Recommend Channels