AJ Stuyvenberg
AJ Stuyvenberg
  • 47
  • 29 134
How Lambda made container cold starts 15x faster
How Lambda made container cold starts 15x faster
zhlédnutí: 968

Video

Using SQS and Lambda the right way
zhlédnutí 1,4KPřed 8 měsíci
Using SQS and Lambda the right way
STOP using Lambda layers (use this instead)
zhlédnutí 1,6KPřed 8 měsíci
STOP using Lambda layers (use this instead)
Thawing your AWS Lambda Cold Starts
zhlédnutí 197Před rokem
Thawing your AWS Lambda Cold Starts
Free Fall
zhlédnutí 157Před 3 lety
Free Fall
No Trespassing - Legal Antenna BASE jumping
zhlédnutí 546Před 4 lety
No Trespassing - Legal Antenna BASE jumping
Turkey Boogie & GGBY 2016
zhlédnutí 1,7KPřed 7 lety
Turkey Boogie & GGBY 2016
Space Net BASE Jump
zhlédnutí 529Před 7 lety
Space Net BASE Jump
A Dirty Low 2016
zhlédnutí 778Před 7 lety
A Dirty Low 2016
Eiger Mushroom Dirty Cut
zhlédnutí 6KPřed 7 lety
Eiger Mushroom Dirty Cut
Paragliders & Parachutes
zhlédnutí 1,2KPřed 8 lety
Paragliders & Parachutes
BASE Jumping - The Swiss Cut
zhlédnutí 3,2KPřed 8 lety
BASE Jumping - The Swiss Cut
Losing and Finding my GoPro while BASE jumping
zhlédnutí 1,2KPřed 8 lety
Losing and Finding my GoPro while BASE jumping
Losing my GoPro while BASE jumping
zhlédnutí 553Před 8 lety
Losing my GoPro while BASE jumping
Solo B.A.S.E Jump from the High Nose, Lauterbrunnen, Switzerland
zhlédnutí 620Před 8 lety
Solo B.A.S.E Jump from the High Nose, Lauterbrunnen, Switzerland
By Way of the Valley
zhlédnutí 622Před 8 lety
By Way of the Valley
BASE jumping the Dumpster
zhlédnutí 3KPřed 8 lety
BASE jumping the Dumpster
Parachuting - 2014
zhlédnutí 76Před 8 lety
Parachuting - 2014

Komentáře

  • @sergiaguilar1
    @sergiaguilar1 Před měsícem

    You’re amazing man I’d like to see a tutorial on how to create lambda functions from scratch

    • @astuyve
      @astuyve Před měsícem

      Thanks for the kind words! I'm happy to do that, we create a ton of functions from scratch all the time

  • @VincentFulco
    @VincentFulco Před 2 měsíci

    please kill the background music in the future. hard to hear you clearly. thanks!

    • @astuyve
      @astuyve Před 2 měsíci

      Thanks! I'll try to fix the mix. I always ask chat when I start how the audio is, but will adjust further.

  • @_theashishbhatt
    @_theashishbhatt Před 2 měsíci

    Interesting! AJ, what's the impact of this on costs.

  • @killermandan
    @killermandan Před 2 měsíci

    404'th subscriber

    • @astuyve
      @astuyve Před 2 měsíci

      Yoooo thank you!

  • @inLoopie
    @inLoopie Před 3 měsíci

    Great stream. Thank you 😊

  • @MatthewBonig
    @MatthewBonig Před 4 měsíci

    When the stream quit I thought it was the cameraman falling off the stand.

  • @bozoclown36
    @bozoclown36 Před 6 měsíci

    Also I'd love to see a graph or some type of visualization on what percentage and specifically which parts of my code is already cached. I guess AWS would never do this

    • @astuyve
      @astuyve Před 6 měsíci

      I agree, but mostly for the sake of curiosity. I'm not sure what actionable insight we'd get from that information, but it would be interesting!

  • @bozoclown36
    @bozoclown36 Před 6 měsíci

    love it! Thanks for the explainer. We were wringing our hands wondering if we should switch from zip to container based after getting close to the 256mb limit and fist fighting with layers. In the end we did and looks like it was a good choice.

    • @astuyve
      @astuyve Před 6 měsíci

      So glad you enjoyed it! Definitely avoid using Lambda Layers (with a few exceptions). I did another video on this

  • @TomAnkcorn
    @TomAnkcorn Před 6 měsíci

    why u in jail?

    • @astuyve
      @astuyve Před 6 měsíci

      I swing by proactively every now and then, as a preventative measure.

  • @parimalTeK
    @parimalTeK Před 8 měsíci

    Hey @astuyve, Thanks for this guide, its very helpful. I want to take this problem further and ask if you Did you ever observer SQS consumer Lambda scaled more than 1250. We have set lambda's reserved concurrancy to 2000 and we have almost millions of messages in sqs queue, And our lambda is not erroring or anything and we observe that lambda does scale to 1250 and then stopped. I think this is some sort of Limit from AWS. Did you ever observed something like that?

    • @astuyve
      @astuyve Před 8 měsíci

      Hey! Great question. 1250 is the new maximum number of concurrent invocations consuming from one queue, you can find that limit in the new announcement blog for faster scaling (aws.amazon.com/blogs/compute/introducing-faster-polling-scale-up-for-aws-lambda-functions-configured-with-amazon-sqs/) as well as the docs. I'd suggest increasing the batch size so each invocation receives more messages, and then increasing the RAM and optimizing the function code to process multiple messages at a time. Good luck!

  • @user-me8ec7zr5p
    @user-me8ec7zr5p Před 8 měsíci

    You rock man, keep doing what you are doing! Thank you.

    • @astuyve
      @astuyve Před 8 měsíci

      Thank you so much for the kind words, it means a lot and I sincerely appreciate it!

  • @aarondfrancis
    @aarondfrancis Před 8 měsíci

    dang, shoulda read the docs. many such cases

    • @astuyve
      @astuyve Před 8 měsíci

      crazy how often that seems to be the case!!

  • @baracjohn3913
    @baracjohn3913 Před 8 měsíci

    So much ROI for such a small change

    • @astuyve
      @astuyve Před 8 měsíci

      Exactly! Super simple, instantly boosts performance by ~5x or more.

  • @rakeshbhat5102
    @rakeshbhat5102 Před 8 měsíci

    very productive, these small but efficient tips can really save a day.

    • @astuyve
      @astuyve Před 8 měsíci

      Thanks, glad you're enjoying it!

  • @paulettebentler3275
    @paulettebentler3275 Před 8 měsíci

    🌸 Promo*SM

  • @coden3541
    @coden3541 Před 8 měsíci

    just curious: how would you compare using partial batch response vs pushing the failures into DLQ? is it fair to say that partial batch response is good for temporary failures (since it'll just retry), but I would need to use DLQs to put a limit on the overall number of retries for a given message?

    • @astuyve
      @astuyve Před 8 měsíci

      Hey! Yeah great question. If the failure isn't temporary you'll of course need some kind of fatal-handling system. If I don't expect to re-drive messages, I usually just set a max attempts value and then write them to logs on the last attempt.

    • @coden3541
      @coden3541 Před 8 měsíci

      Thank you for the reply!@@astuyve Do you mind elaborating how would you set a max attempts value? (If you push the records back into the queue using partial batch response, is it possible to include some kind of attempt number?) I am new to Lambda and SQS and really appreciate the content you're putting out!

    • @astuyve
      @astuyve Před 8 měsíci

      Hey! AWS tracks that for you, so you simply have to mark the messageId in the batchItemFailures response and SQS will keep track of the number of attempts for that message. No need to change anything in your own code besides the example I've shown here. Glad you are enjoying it, and good luck on your learning journey!

  • @user-me8ec7zr5p
    @user-me8ec7zr5p Před 8 měsíci

    Very informative video! You rock, thank you. I'm curious about your thoughts on our use case: The primary reason we opted for layers was due to the significant speed boost it provided our CI/CD process, shaving off about 5-10 minutes by uploading our node_modules as a layer. In our architecture, lambdas of the same service share the same modules (similar to what you'd find in a non-serverless, microservice environment), so instead of each lambda consuming around 200MB, each one only uses 2MB, and the layer is uploaded just once. I would be really interested to know your thoughts on our use case and solution. Do you think it's an abuse? Would you recommend a different pattern? Thanks!!

    • @astuyve
      @astuyve Před 8 měsíci

      Thanks for the kind words! My biggest concern in your case is safe deployments. Unless you're using Lambda versions + aliases, you'll be unable to add/update a dependency without fully backwards compatible code without risking Lambda errors for at least a few seconds because the updateFunction and updateFunctionConfiguration API calls are asynchronous. When I ran into this with Vercel, those functions errors out for about 6 seconds until both operations were complete. This can be avoided with aliasing, but you still risk dependency smashing. Either way, I hope you use what works best for you. Good luck!

    • @user-me8ec7zr5p
      @user-me8ec7zr5p Před 8 měsíci

      @astuyve Wow, very interesting, that's definitely good to know! Yes we are using versions and aliases because of provisioned concurrency which is required is, so we set is as a basic requirement for a stack. By the way, have you encountered issues where, even though provisioned concurrency is configured, Lambdas still experience cold starts? This happens even with regular traffic, not just bursts. It’s something that occurs quite randomly for us, and we can't find the root cause… Also we recently started using Datadog for serverless applications and are really excited about it. 😊

    • @astuyve
      @astuyve Před 8 měsíci

      @@user-me8ec7zr5p Glad you're liking the product! Yes I've seen this happen with Provisioned Concurrency even with regular traffic, as ever so slightly (occasionally) there are no warm instances to serve the function. I'd check the lambda concurrency metric to see if you're bumping close to your PC value. If that function is nowhere near the provisioned capacity, I'd probably open a bug with AWS and ask.

  • @yacer12
    @yacer12 Před 8 měsíci

    Great video!

  • @aaronshunter
    @aaronshunter Před 8 měsíci

    Great breakdown and explanation, AJ! 👏

    • @astuyve
      @astuyve Před 8 měsíci

      Thanks so much Aaron!!

  • @90hijacked
    @90hijacked Před 8 měsíci

    is this video sped up? The AWS console is no where near this responsive lmao

    • @astuyve
      @astuyve Před 8 měsíci

      Hahaha no, not sped up. I'm just close to us-east-1

  • @krakers1990
    @krakers1990 Před 8 měsíci

    Great video, keep them coming!

    • @astuyve
      @astuyve Před 8 měsíci

      Thank you Tomasz!

  • @aarondfrancis
    @aarondfrancis Před 8 měsíci

    Subscribed! 🎉

    • @astuyve
      @astuyve Před 8 měsíci

      AARON FRANCIS omg you dropped this 👑, thank you!

    • @aarondfrancis
      @aarondfrancis Před 8 měsíci

      @@astuyve I gotchu!

  • @Loige
    @Loige Před 8 měsíci

    Great video, AJ! I agree with your perspective here. Lambda layer are often unnecessary and they only end up adding complexity! Great overview of all the pros and cons. Please more of these :P

    • @astuyve
      @astuyve Před 8 měsíci

      Thanks for the kind words Luciano! I'll try to make more videos!!

  • @sprada37
    @sprada37 Před 8 měsíci

    Nice to see you creating content like this!

    • @astuyve
      @astuyve Před 8 měsíci

      Thanks Sergio! I'm still trying to figure out the medium, but I think I'll make more

  • @maxday_coding
    @maxday_coding Před 8 měsíci

    Amazing content and tips! Thanks for sharing AJ!

    • @astuyve
      @astuyve Před 8 měsíci

      Thanks Max! Love the channel!

  • @devopmh
    @devopmh Před 9 měsíci

    you are bril man, thanks for sharing this kind of knowledge

    • @astuyve
      @astuyve Před 8 měsíci

      Happy to help!

  • @LaoZhao11
    @LaoZhao11 Před 10 měsíci

    an impressive experience related to cold starts with AWS Lambda It has got me wondering whether GCP Cloud Run offers a similar mechanism

  • @user-be7cd4wx5t
    @user-be7cd4wx5t Před 2 lety

    𝗧𝗵𝗲 𝗪𝗮𝗿 𝗶𝗻 𝗨𝗸𝗿𝗮𝗶𝗻𝗲 𝗜𝘀 𝗖𝗵𝗮𝗻𝗴𝗶𝗻𝗴 𝘁𝗵𝗲 𝗪𝗼𝗿𝗹𝗱 The war in Ukraine is unlike any war that’s been. Although it seems local, this war is changing the world. In the end, after all the pain, the parties will establish new relationships, and new relationships will be established around the world. This war is the beginning of a formation of a new world order, where all parties unite against the one common enemy of all of humanity: egoism. It will take time, but everyone involved will realize, and the whole world with them, that they are not fighting against each other, but against an enemy within them. If we let the idea sink in, even a bit, it will make it happen even sooner. The war that began in late February will not end soon. It will take many more months until everyone realizes that war itself, the very concept of it, is evil. In that sense, the war in eastern Europe is correcting all of humanity, transforming our perception and our understanding of good and evil. The casualties, the injured, and the lost property are a terrible price to pay. Nevertheless, global processes always come at a cost. We should not blame others for the cost, and we should not think that there is nothing each of us can do to change the world. It is in the hands of every person to change the world for the better, and to make the atrocities of war, and all atrocities that humans are inflicting on each other, disappear. All we need is to realize that the only enemy lies within us-our self-centered attitude. It incites us against each other, demonizes and vilifies anyone who disagrees with us, tells us that we are the only ones entitled in this world, and thereby sets us off against each other. We are all like that, infected with a pandemic of narcissism. Nevertheless, there is a lot we can do to change the world. First, we must accept that there is a good reason we are so different from each other. Each of us makes a unique contribution to the world that no one else can. If we were all the same, the contributions we receive from others, and on which our lives depend, would be absent, and we would not survive, in the most physical sense of the word. We will realize that our ego is the enemy only when we realize that singularity is the wrong key word for happiness. Today, the key word for happiness is complementarity-mutual satisfaction of each other’s material, social, emotional, and spiritual needs. We are living in a world where we are all dependent on each other. The food we eat, the clothes we wear, and the appliances and gadgets that we use are all made by people we do not know, in places we do not know, and reach us in ways we do not know. But were it not for this chain of myriad unknown individuals, we would not survive, since we cannot provide for our needs by ourselves. The same goes for social ties. All our connections, communications, and interactions with other people are made possible with the help of countless people who serve us without our awareness. But were it not for them, we would not be able to work or socialize. Despite this obvious fact, we behave toward others with as little consideration as possible, and when we are nice or considerate, it is because we have an ulterior, selfish motive. We do not have the prerogative to keep up this behavior. We are destroying the world and destroying ourselves. Back in the 1930s, Baal HaSulam, a great thinker and a great kabbalist, wrote an epic essay titled “Peace in the World.” In it, he writes, “Man is inherently born to lead a social life. Each and every individual in society is like a wheel that is linked to several other wheels placed in a machine.” How odd it is that ninety years ago, before World War II, people already realized that we are all dependent on each other and must behave toward each other with consideration. Just think what we could have avoided had we been more attentive and open-minded. Now, too, we are headed for a catastrophe unless we pay attention and begin to act like one entity, one global society that works like a single, united family. The war will change the world, but I hope we can change ourselves before the war changes us.

  • @nickheimmermann6347
    @nickheimmermann6347 Před 2 lety

    Crazy man!

  • @dougdavis8986
    @dougdavis8986 Před 2 lety

    I like the last guys girly voice! You can tell how scared he was!

  • @ahmadjunaedi2074
    @ahmadjunaedi2074 Před 3 lety

    Wow gila😂👍👍👍

  • @lederse
    @lederse Před 4 lety

    Nicely done!

  • @Negative4Productions
    @Negative4Productions Před 7 lety

    Badass!

  • @loritaft3351
    @loritaft3351 Před 7 lety

    You guys freakin' rock it!

  • @Negative4Productions
    @Negative4Productions Před 7 lety

    Nice one, AJ!

  • @Freeduu
    @Freeduu Před 7 lety

    nice compilation! loved the part of Lauterbrunnen, Switzerland. my home ;D keep going & be blessed

  • @mickdel
    @mickdel Před 7 lety

    Fantastic.

  • @lawfreefly
    @lawfreefly Před 7 lety

    great

  • @SteveSirrine
    @SteveSirrine Před 8 lety

    It was sooooo fun!

  • @Freeduu
    @Freeduu Před 8 lety

    nice stuff :)

  • @chrisarcand5499
    @chrisarcand5499 Před 8 lety

    Amazing.

  • @Linconjo
    @Linconjo Před 8 lety

    Loved how scenic it looked when the GoPro hit the ground. The timing and position of the parachute is perfect lol

    • @astuyve
      @astuyve Před 8 lety

      The story is rather funny, and I explain it a bit in another video. But I ended up losing that camera in the grass in Switzerland for almost a month. Eventually the cows ate enough of the grass and another jumper stumbled over it. He posted a picture of me, and I ended up getting it back.

  • @AntonSqueezer
    @AntonSqueezer Před 8 lety

    Been watching this over and over. Really like this one AJ.

    • @astuyve
      @astuyve Před 8 lety

      +Squeezer Andersson haha awesome! I've been watching yours over and over again too, I just can't wait to come back!

  • @jedarapa22
    @jedarapa22 Před 8 lety

    God loved Switzerland

  • @dack758
    @dack758 Před 8 lety

    This is awesome hope to visit here on one day and do the same. I kinda want to know your story? I mean do you do this daily monthly yearly or like for a living? hahah Saw your video on GoPros channel. Stay Safe ;) and awesome video.

    • @astuyve
      @astuyve Před 8 lety

      hey man! Glad you liked the video. My story is pretty simple. I started skydiving, then eventually moved on to BASE jumping. Eventually I took a trip to this valley in Switzerland! BASE jumping is a passion of mine, but it doesn't pay the bills. I do have a day job, but I try to jump as often as I can. Usually that means one or two big trips per year, with lots of little outings in between. Thanks for the kind words!

  • @dobermanGTS
    @dobermanGTS Před 8 lety

    And finishing like this... AWESOME

    • @astuyve
      @astuyve Před 8 lety

      +Doberman Durden I'm just happy I was able to recover my camera and post the footage!

  • @dobermanGTS
    @dobermanGTS Před 8 lety

    I like videos starting like that :D

  • @Freeduu
    @Freeduu Před 8 lety

    just awesome this compilation!! :) right now it is snowing here in Lauterbrunnen really bad :S

  • @Freeduu
    @Freeduu Před 8 lety

    Nothing can destroy a GoPro - except Chuck Norris ;D

  • @FedericoRomano_Frame
    @FedericoRomano_Frame Před 8 lety

    Hello! nice video, if you are interested in videos made with GoPro, try to look at my if you like, and maybe subscribe to the channel?