Get these slides!
👋 I'm Luciano (🇮🇹🍕🍝🤌)
👨💻 Senior Architect @ fourTheorem (Dublin 🇮🇪)
📔 Co-Author of Node.js Design Patterns 👉
We host a weekly podcast about AWS
Based on a talk presented at the AWS Summit London 2022 (MA-03 with Matheus Guimaraes & Colum Thorne) - fth.link/jn5
We have a continuously running step function to scale up the number of containers as needed
Decides whether to restart the step function, start new tasks or simply wait
Checks all the running jobs and how many containers they need
Uses the runTask API to start as many containers as needed
If this step function has done 500 iterations, start a new one and end
How do we stop containers?
They stop automatically after 15 minutes if they can't get jobs from the queue.
while True: result = sqs_client.receive_message(/* ... */) if 'Messages' not in result and time.time() - time_since_last_message > 15 * 60: break else process_job(result['Messages'])
* just a happy cloud