Serverless kinda sucked without this...

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ก.ย. 2024
  • DISCLOSURE: VERCEL PAYS ME BUT NOT FOR THIS SPECIFIC VIDEO. I just wanted to rant about this
    waitUntil and the benefits for us serverless diehards is huge. I've been asking for this forever so I'm pumped I finally have it.
    Check out my Twitch, Twitter, Discord more at t3.gg
    S/O Ph4se0n3 for the awesome edit 🙏

ความคิดเห็น • 95

  • @coffeeintocode
    @coffeeintocode 3 หลายเดือนก่อน +96

    Sounds like you should just use a server

  • @thepeer
    @thepeer 3 หลายเดือนก่อน +204

    why don't you just use a 5 dollar vps

    • @Om4r37
      @Om4r37 3 หลายเดือนก่อน +11

      great for 99% of projects, but it’s not scalable.

    • @kevgoeswoof
      @kevgoeswoof 3 หลายเดือนก่อน +81

      @@Om4r37 how about a second five dollar vps?

    • @Om4r37
      @Om4r37 3 หลายเดือนก่อน +19

      @@kevgoeswoof idk how nobody thought of this before, you’re a genius 😂

    • @JakobRossner-qj1wo
      @JakobRossner-qj1wo 3 หลายเดือนก่อน +4

      And if you blow up? What happens if many users want to access your site at the same time? Your company dies if you cant handle a spike in user traffic.

    • @JakobRossner-qj1wo
      @JakobRossner-qj1wo 3 หลายเดือนก่อน +2

      It does not scale

  • @mohitkumar-jv2bx
    @mohitkumar-jv2bx 3 หลายเดือนก่อน +73

    Classic example of first creating the problem and then "fixing" it. 😂

  • @memestagestartup
    @memestagestartup 3 หลายเดือนก่อน +116

    waitUntil(...) -> but don't wait too long.
    Go and ask her out.

    • @lucaruana9404
      @lucaruana9404 3 หลายเดือนก่อน +2

      Thank you, man, now that I've read this in the place I least would have expected to I will

  • @isakhansson917
    @isakhansson917 3 หลายเดือนก่อน +49

    So like Cloudflare Workers?

    • @stephan553
      @stephan553 3 หลายเดือนก่อน +19

      Theo loves to sell Cool Aid after it boiled in the Sun for three summers.

    • @drprdcts
      @drprdcts 3 หลายเดือนก่อน +3

      Theo the type of guy to create a schedule for wearing each of his clothes

    • @stephan553
      @stephan553 3 หลายเดือนก่อน +2

      Worst of all...
      #NotAVercelShill
      Only talks hype, no technical insight...

    • @ndrut
      @ndrut 3 หลายเดือนก่อน

      @@drprdcts 🥶

  • @mubashir3
    @mubashir3 3 หลายเดือนก่อน +3

    For vast majority of devs serverless is a massive headache with absolute garbage ROI.

  • @geekthegeek730
    @geekthegeek730 3 หลายเดือนก่อน +15

    Lambda ( response ) -> SQS -> Lambda ( wait until task ) = 🎉🎉

    • @emptycodes
      @emptycodes 3 หลายเดือนก่อน +5

      Skip the SQS, just invoke another Lambda asynchronously.

    • @BCRooke1
      @BCRooke1 3 หลายเดือนก่อน +1

      Ah but you’d want to have retries, and maybe a dead letter

    • @raghavrudhra3327
      @raghavrudhra3327 3 หลายเดือนก่อน

      works for your own lambda's and server side logic but if you are using nextjs and server actions. they control the infra

  • @noah12121
    @noah12121 3 หลายเดือนก่อน +6

    Why not just use a $5 vps?

  • @DeltaByte
    @DeltaByte 3 หลายเดือนก่อน +5

    So like Cloudflare workers has had for years? or y'know just invoke a second lambda, or do the (at least IMO) just fire off a PutMessage to SQS since that is far more reliable for background processing anyways and with the minor overhead of having to await that put request. AWS Also support directly putting into SQS/EventBridge/SNS/Etc. directly from API Gateway anyway without you having to write even a single Lambda function (great to receiving spikes in traffic for submitting forms and such)

  • @rtorcato
    @rtorcato 3 หลายเดือนก่อน +7

    The whatever service you are wondering about is most likely Cloudlfare.

  • @JuliaOrtiz-ti6ku
    @JuliaOrtiz-ti6ku 3 หลายเดือนก่อน +2

    I had so many issues with that. Stale-while-revalidate made no sense at vercel because you had to pay the cost of waiting for revalidation while it still gave you the stale response in the end..

  • @helleye311
    @helleye311 3 หลายเดือนก่อน +1

    I always wanted something like this, but I didn't even think about making my own architecture on top of lambda, I'm a noob.
    It just makes sense to do what you need to do, send response, and then finish any extra stuff like updating cache, logs etc. Not to mention streaming.

  • @glorrin
    @glorrin 3 หลายเดือนก่อน +4

    logging,
    sending emails,
    writing stuff in db the user don't need,
    There are so many times I wanted to have those and it frustrated me because "it worked on local dev though"

    • @RaZziaN1
      @RaZziaN1 3 หลายเดือนก่อน +1

      Stop using javascript, problem solved. It was already done 1000 times in other languages or backend languages.

    • @luka1790
      @luka1790 3 หลายเดือนก่อน

      @@RaZziaN1 what do you use now?

    • @glorrin
      @glorrin 3 หลายเดือนก่อน +2

      @@RaZziaN1 you are right that's why I use typescript

  • @cnikolov
    @cnikolov 3 หลายเดือนก่อน

    ❤ love that it didn't take you long to come around that feature, my main use case is logging and internal processing that the user doesn't/shouldn't care about

  • @MegaMage79
    @MegaMage79 3 หลายเดือนก่อน +2

    I believe that Lambda function doesn't die after it serves sync invocation request. It is kept around for ~15mins to potentially serve more requests.

    • @gusryan
      @gusryan 3 หลายเดือนก่อน

      The deployment lives but you can't run code after you've returned a response. If you want to do that you have to invoke another lambda no?

    • @MegaMage79
      @MegaMage79 3 หลายเดือนก่อน

      Well, for example with dotnet runtime lambda is just a regular dotnet app so it can run what it wants in the background. I would assume it's the same for node.
      But yeah, that still doesn't guarantee that secondary logic will actually eventually succeed. I wonder if the vercel invention can provide some actual guarantees

    • @gusryan
      @gusryan 3 หลายเดือนก่อน

      @@MegaMage79 It's definitely not hence the video. Once you return a response in a JS lambda the lambda is killed even if it's still running some other async task

    • @Yxcell
      @Yxcell 3 หลายเดือนก่อน

      @@gusryan What's the downside of just letting it continue running the other async task?

    • @gusryan
      @gusryan 3 หลายเดือนก่อน +1

      @@Yxcell it doesn't, that's the whole point of the video lol. Once the lambda returns the whole process is killed. If you want something to keep running you have to call to a second lambda before you return from the first one

  • @Salzian
    @Salzian 3 หลายเดือนก่อน +1

    So... Like cloudflare workers had since forever?

  • @underflowexception
    @underflowexception 3 หลายเดือนก่อน

    Laravel has queues built in. You can then interface with a number of drivers. Theres also a dispatch after response function you can use in your controllers to run arbitrary code.

  • @FeLiNe418
    @FeLiNe418 3 หลายเดือนก่อน +2

    The video is not sponsored by vercel BTW

  • @SirMeowric
    @SirMeowric 3 หลายเดือนก่อน

    Continuations still newsworthy in 2024. Maybe they should replace "off-by-one-errors" in the top 3 hard problems list.

  • @_Aarius_
    @_Aarius_ 3 หลายเดือนก่อน

    My way of handling tasks after lambda response has been to setup a lambda extension registered to invokes - its been honestly pretty painless for me (rust lambdas)

  • @michaelczolko6093
    @michaelczolko6093 3 หลายเดือนก่อน

    please promise me that you will never stop doing content!

  • @nicksdrumsticks
    @nicksdrumsticks 3 หลายเดือนก่อน

    I currently have a project that could use this. I'm holding back the client response artificially to wait for something it shouldn't need to wait for. Cool.

  • @MrManafon
    @MrManafon 3 หลายเดือนก่อน

    I think they’ve been lowkey doing this with revalidateTag. Remember how they removed the await from the docs.

  • @menglin7432
    @menglin7432 3 หลายเดือนก่อน

    Second a few comments below. I don't think serverless itself is bad
    I think CloudFlare workers is better designed for frontend SSR workloads than AWS lambda.

  • @RemiKalbe
    @RemiKalbe 3 หลายเดือนก่อน

    A queue would make way more sense especialy for retries, I'm sure there is a use for this but the example you used is not the best in my opinion.

  • @rawallon
    @rawallon 3 หลายเดือนก่อน +5

    Dax is anti vercel because he suggest there's already an alternative in place? oof

  • @karaloop9544
    @karaloop9544 3 หลายเดือนก่อน +1

    Lambda isn't that much different from CGI of old, right?

    • @soniablanche5672
      @soniablanche5672 3 หลายเดือนก่อน +1

      lambda is basically php

    • @BCRooke1
      @BCRooke1 3 หลายเดือนก่อน +1

      I’ve never thought of it like that before. But I guess spinning up containers to run a program is like a distributed version of CGI in a way

  • @gdmk1000
    @gdmk1000 3 หลายเดือนก่อน

    for js deno deploy is strictly superior for such characteristics

  • @dytra_io
    @dytra_io 3 หลายเดือนก่อน

    woah this is very nice

  • @huge_letters
    @huge_letters 3 หลายเดือนก่อน

    4:30 - of course it will die, you can't write to files on lambda 🤓

    • @emptycodes
      @emptycodes 3 หลายเดือนก่อน +2

      You can write files at /tmp 🤓

  • @KevinVandyTech
    @KevinVandyTech 3 หลายเดือนก่อน +1

    Why not just use a $500,000 VPS?

  • @dorktales254
    @dorktales254 2 หลายเดือนก่อน

    Why are people so mean, LOL

  • @SameerAli-bk7vo
    @SameerAli-bk7vo 3 หลายเดือนก่อน

    the vercal is good at copying cloudflare worker :D

  • @BloodvorteX7
    @BloodvorteX7 3 หลายเดือนก่อน

    What color scheme does he use?

  • @ktxed
    @ktxed 3 หลายเดือนก่อน

    vercel shilling lol

  • @Mike-zr9wq
    @Mike-zr9wq 3 หลายเดือนก่อน +3

    Solving a pain point that doesn't really exist. Coolify + VPS = Freedom. Screw this VC funded companies

  • @keithjohnson6510
    @keithjohnson6510 3 หลายเดือนก่อน

    `.repeat(1024)`, to fudge gzip, was header -> 'accept-encoding: identity' not an option?