Luciano Mammino (@loige)
2022-06-09
Get these slides!
๐ I'm Lucianoย (๐ฎ๐น๐๐๐ค)
๐จโ๐ป Senior Architect @ fourTheorem (Dublin ๐ฎ๐ช)
๐ Co-Author of Node.js Design Patternsย ๐
Accelerated Serverlessย | AI as a Serviceย | Platform Modernisation
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
S3 Quotas
/parts/123abc/... /parts/456efg/... /parts/ef12ab/... /parts/...
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'])
Cover photo by Murat Onder on Unsplash
Thanks to @eoins, @pelger, @cmthorne10ย & @guimathed
THANKS! ๐
* just a happy cloud