Bringing in Pulumi and AWS properly, part 2 | glowing-telegram project - Episode 129
In this video, I walk you through making significant strides in transforming our Rust/TypeScript web app into a serverless architecture using Pulumi and AWS services. We tackle AWS resources management, configure batch job definitions, and manage S3 buckets without compromising necessary data. I also maneuver through some technical hurdles with async programming in Rust, notably with Tokyo.
I begin by ensuring our AWS infrastructure can remove certain resources while keeping our protected S3 bucket intact. We explore batch job definitions and handle some persistent issues related to deleting resources like the Elastic Container Repository.
Moving into Rust coding, I approach async function errors and delve into Tokyo's async runtime, figuring out efficient ways to handle errors while setting up our configurations. I also explain the importance of prefixes in our bucket configuration to store audio extraction results, keyframes, and metadata in DynamoDB.
A major portion of the stream focuses on strategizing multi-tasking using Rust's concurrency model. We explore how to perform tasks in parallel, akin to JavaScript's Promise.all, enabling us to extract audio, key frames, and gather metadata concurrently.
Towards the end, I outline the next steps, which include converting our TypeScript Pulumi code to Python, setting up security groups, compute environments, and role configurations to ensure our serverless architecture functions seamlessly.
📅 This stream was recorded on 2024-09-15.
Join me in the next stream for more coding adventures, and don't forget to check out the links below to stay connected with our community.
🔗 Check out my Twitch channel for more streams: https://www.twitch.tv/saebyn
GitHub: https://github.com/saebyn/glowing-telegram
Discord: https://discord.gg/N7xfy7PyHs