@@vogel2499 This. You should have the option for a pre-paid service aka "once your account runs out of money, you're informed that your services have stopped and will continue to run after you've added more money to your balance." Especially in countries where credit card aren't a thing. I e.g. live in Germany and here we have debit cards (aka you cannot go lower than 0€ in your bank account which is much more preferable in my opinion) and really only a handful of people have credit cards. And ordering one just so I'll be able to use cloud services is just ridicolous.
One of my major fears while learning cloud. There should be a limit for how much you spend on the services, but I think no provider has this as a configuration.
I've heard many tales about people forgetting to turn a demo project off but all of them just contacted their cloud providers (GCP & AWS, not sure about Azure) and all them replied "np" and cancelled their billing - Still I really want to watch this video asap. Great content as usual man!
I'm so glad we're on premise. We recently had a problem in production because we loaded thousands of records into memory by mistake, spinning up CPU and RAM usage. This made some customers unhappy because they couldn't use our service, but imagine this happening in the cloud. Unhappy customers AND a bill for useless work done!
You still paid for the hardware wear and tear, you still paid for the electric, cooling, any networking costs, etc. It just feels good because the bill isn't lumped into "here all your compute, storage, etc usages now pay us".
@@rickytorres9089 But it's also a natural barrier since we could only use up the resources we physically have. While cloud providers have cost and scaling caps, it's easy to configure them wrong. One misclick and you spin up hundreds of instances.
Yes, I did burn money in the google coud, 5600$ bill in 4 hours - was attached by a scraping bot and thanks google cloud they understood and "reset" the bill
My first experience with cloud computing was with a simple GCP windows machine that had set rules (I explicitly set it to NOT grow, to avoid cost). It fit well into the free trial, so I just let it be. I deleted the machine after 6 months (out of 12 for free trial) and never really used GCP again. Then I got a bill for 50$ for a machine I didn't even have access to (because it got deleted), and only thing their support said is to tell my bank to block it. Nice
It's not 24 hours a day for 12 months, Compute Instances have a limited free trial time by hours. And just by reading 6 months, I am pretty sure you exhausted that free time limit of Compute Engine.
6:00 It's interesting 69k/71k of the budget was related to Firestore reads pricing, whereas if we compare it to Oracle NoSQL database a 116B reads would cost around 287$ (99.5$ cheaper than Firestore reads pricing). Which means if Oracle is able to commercially sell these reads with such a price and gets a profit from it the actual cost is even much less, meaning when GCP takes this billing it loses almost nothing.
this explains why their pricing in general is so much above classic hosting providers like hetzner etc - I don't think those cheap provider would be that customer friendly if I would forget to delete an expensive server for a long time.
There should be a feature like simulating the cloud run functions or some other services to catch errors before deploying to production and in this Artificial intelligence might help to catch up errors early than an average person would.
but you need to run the code to see the errors, and the code takes google cloud levels of computing to run... you can't simulate it without running it, that's the actual halting problem...
Never ever ever hardcode your API key values in your code, even for one second. You will probably forget and check the code in. Use environment variables or cloud secret managers.
Something I just cannot wrap my head around is WHY you would use a cloud service in the first place if you don't need the instant scalability. Heck, you might use your MBP or a Raspberry Pi at first and when your project starts out and you need to deliver a page quickly, just use a couple of geo-located VPS instead. However I think I might be trapped in an old mindset here - I'd be really happy to hear why you would use the cloud in what I think is 95% of the use-cases. It just seems utterly expensive for what it is.
It might be because it is easier, and also can be started free. I suppose no one would want to run the database on their laptop and let it run everyday, or not anyone has a PC that can run it everyday, or not anyone had/would bought a spare device for it. Sorry for my bad English.
5:00 I think a better term is a recursive call. Technically it is an infinite loop (since there's always a main event loop somewhere), but an infinite loop is more conventionally a while or for loop that never ends.
No it's not. A recursive call is when a function is calling itself without a termination condition, and infinite loop is when a data structure doesn't have a condition that fulfills to terminate the cycle.
Or you could just get a cloud server instance and connect to that for a fixed monthly cost that's independent of use. It might not be the most optimal for large scale applications or certain workflows, but if you're learning, testing, or just hosting small scale projects, it works perfectly fine. I have a handful of small apps that I deploy through Docker on an EC2 instance.
The reason I am always almost on my wits end when on AWS.😅 most basic thing is I always makes notes of service I started and access so that I won't forget it later on so that I don't need to see that uncanny bill.
Good idea. You still need to be careful. Behind the scene so many provisioning happens for which you may be billed. For example, if you create a managed instance group as a backend service for a load-balancer, then a network endpoint group gets created automatically behind the scene. You may delete the backend service later, but the NEG doesn't get deleted automatically.
We had a similar issue with AWS where a hacker got hold of one of an old emplyees api keys and setup a load of lambda functions. By the time it was noticed our bill was $15,000 for just a few weeks. Thankfully in the end Amazon refunded the whole lot, but it wasn't easy and was very scary. Protect your API keys like your life depends on it and regularly switch them out and clear out unused ones.
I made a mistake when using AWS gamelift during my bachelor assignment two years ago: i forgot a fleet running a game instance. I got $150 bill, but after contacting them it was deleted. Very good service, I can highly recommend AWS. 👌
I made one in firestore. A document needed to be updated based on values in an update. I hadn't taken into account an old client, which would result in a calculation turning out to be NAN. One and a half hours later, with a SINGLE old client causing this, $40 was used. This could have escalated like a nut, if I hadn't seen it by random luck.
Just an addition to the topic of leaked IAM Keys: GitHub nowadays has a "scanner" which scrans every commit for known Keys (e.g. IAM) and immediately disables this key by telling AWS (this literally happens in less than a minutes) and sending you a mail that you f***ed up. I only know this for AWS but I guess that they also have this mechanism for e.g. GCP and Azure :)
At a convention, I was talking to a Microsoft employee, he was apparently a higher-up. He accidentally racked up a $5,000 bill just playing around in Azure. He talked to his boys and got the bill removed. All kinda scary!
That time I accidentally deleted a whole kubernetes cluster instead of a single node pool on Google Cloud. It was scary how easy it was to delete it automatically. Thankfully it was a test cluster and it took only 2 days to restore it completely from scratch. But my face when I realized that I did it and that there was no turning back :D
I got so scared that I just took down a test project that I had deployed on vercel 2 days ago for my portfolio after watching this because i remembered that it had my fire store(free tier) config exposed in front-end. I dont know if what I just did was plain stupid or what but now I'll rather do my research on it first than blindly deploying it.
This is an old video but its noteworthy to add that I was in a similar situation like the startup thankfully they were reasonable enough to refund over 90% of the bill. I am now afraid of touching the cloud again. I still have depts to pay on AWS too
I burned $6000 on some azure lab machines. We had just achieved gold partner status and I reviewed the estimated cost and it said $0. But I was just in the wrong place looking... Wise by this lesson a few years later I told a colleague to be careful with his Azure subscription. He got himself an enterprise sql Analysis instance. $7000 spent there...
Not a long time ago I was exploring kubernetes and was following an Indian tutorial of how to set everything (Ec2, S3 and Route53). Within 2 hours I had a 3€ bill when I thought I was in free tier... Somehow everytime I killed an EC2 instance a new one outside of the free tier was created... It was just 3€ and AWS gave me a 3€ voucher when I explained what happened. It was enough for me to be scared enough to try again
There is massive risk in using cloud so I cannot comprehend the rush to get there. If you are a startup it may be the quickest way. For established companies, you can reduce risk by having your own platforms.
AWS Cost Explorer is about the Services that you forgot to turn off after use.. I shutdown my RDS instance only to realise that it starts back again after 7 days.
I remember racking up $1000 from AWS and I was sweating bullets cause I was basically trying out some things. I was relieved when AWS forfeited my bill
I've been an Azure customer for 9 years and I have NEVER ONCE jacked up an unintended bill! Very scary but if you're smart, one shouldn't worry too much but just be smart about it!
In my cloud computing class I accidentally made a recursive call in a function that calls a lambda endpoint. I've never been so terrified in my life, until I realized my CORS wasn't set up properly so the function calls never reached AWS. I will never be mad at my bugs again.
That's why I want the "auto-shutdown" to prevent unintentional bills. But on the other hand, people will just abuse it and not pay. On their perspective, "charge by default, cancel later" is safer option for everyone and forces devs to be more careful.
I don't see how you'd abuse it. If you shut down your project before any cost occurs... That's similar to some free tiers like Railway which gives you X free hours per month
woudlve spent 1k a month with cloud run because of cpu time billing, was able to do the same task with twice the amount of serverless functions with only a 4$ a month bill
I understand your suggestion to not make infinite loops, but what if someone is just endlessly computing (with no scaling / explosion of computational complexity as described above) rather than responding to user events? To take an artificial example, let's say I'm just getting a list of prime numbers. So I do while(true) { i++; if(isprime(i)) { log(i); }}. Is there an alternative? I guess I could do batches of numbers, with human intervention in between (e.g. every million iterations, store i, wait until human says proceed), but this doesn't seem to really solve any problem. So... is there a problem with this? And if so, what's the alternative?
Holy crap I still remember the day I got $600 bills from google cloud, I was doing some testing and deployed a small project to the google cloud, since I have $200 dollars free credit I didn't worry that much, after finishing the whole thing I forgot to stop the VM and that was it, a month later when I check the google cloud I realized I got billed $600.
I got a £300 bill on AWS many years ago while studying, I was terrified as it was a lot of money for me back then, they returned the full amount without asking anything
I kind of did, because it was my $300 free credit that got exhausted in a single day. The way it happened was that I setup an extension in Firebase that auto translate records from Firestore to 24 languages . After uploading loads of records I mean 180 records with multiple key-values pairs to auto translate on document create by the extension. I ended up with $0 after uploading such record twice, this was because I was using a service that I did not understand how its billing works. Not understanding how the service billing works was the real problem in my case.
Go for lightsail VPS, cheapest VPS in the earth after vultr. AWS is indeed the cheapest unless you configure something wrong and expose everything outside
I have seen USD 600,000 AWS bill over a Friday afternoon fuck up... imagine you have a few petabytes of data in like 2-4kb files on s3... not super cheap to store but okay as long as you don't really access this data much. Now imagine that you just make a small change to the storage policy that dictates that all files older than 3 months should be moved to glacier. One line change... causing billions of delete operations from s3 and billions of writes to glacier... No VMs in sight that you could stop, because it's an internal aws process. We got a discount for the fuck up, but still ended up paying like 150k
I ran a BigQuery search on a publicly hosted dataset just to explore the data and get a feel for it. I kinda gave up after 20-30 mins because the latency/speed was really bad and I'm used to Pandas rather than SQL, so I wasn't really sure of what I was doing. Got a $500 USD bill for search results that never showed up :)
If I'm not mistaken, firebase counts readings when executing security rules, right? If someone takes the public APIs on the frontend and tries to run readings (even without success), wouldn't that be a kind of "budget attack?"
I racked up a few hundred dollar bill after running a VPN server for VPC access and I forgot to split the tunnel so regular traffic would not go through the VPN. 5 users soaked up about 10gigs of transfer costs in 3 days watching RUclips
Have you ever burned money in the cloud? Please, do tell 👇
Yep
Nope.
I'm getting 100$ a month worth of AWS credits for my Alexa skills, which means that I *print* money in the cloud on a regular basis, in a way. :P
Yup, I've spent about 600$ on AWS by just starting and forgetting about cloud service. Thankfully, customer service sent back to me all the money.
Just applied for my credit card thanks for warning..........
I immediately checked my cloud dashboard after looking at that bill
Lol, me too, I have a free tier in AWS
Oh my God me too every single time I watch this video.
I too looked at my Azure cost management
lol Yeah i always check it when i log in and have an alarm set
Ive heard a few horror stories but they usually give you credit
do ✍🏼 not ✍🏼 create ✍🏼 infinite ✍🏼 loops ✍🏼 in ✍🏼 the ✍🏼 cloud
XD
This is gold!!!
I agree, but on the other hand, forcing user to use credit card is a dick move and must be stopped.
@@vogel2499 This. You should have the option for a pre-paid service aka "once your account runs out of money, you're informed that your services have stopped and will continue to run after you've added more money to your balance." Especially in countries where credit card aren't a thing. I e.g. live in Germany and here we have debit cards (aka you cannot go lower than 0€ in your bank account which is much more preferable in my opinion) and really only a handful of people have credit cards. And ordering one just so I'll be able to use cloud services is just ridicolous.
@@Black-Dawg-Jesus I see the option to add debit cards on AWS, Azure, and GCP
Sorry to keep you waiting, please grab a free sticker in the meantime. EDIT sold out!
:D
Ok :p
@@harsh9558 Afaik we don't have teleportation technology as of now so you will have to wait a bit for the sticker to arrive, lol.
Is EU supported 🤔?
@ Yes, worldwide!
Fun fact : Cloud Overflow = Bank Account Underflow
If that means that I have $9,223,372,036,854,775,807 on my bank account, then hell yeah
I wonder if you can f*** up so bad an official from your bank shows up in the middle of the night...
Or, rather, underflow 😂
@@Simtoonia nah, overflow, because when it hit the 32bit integer limit it automatically go down to the negative limit
Mb
Cash Heap Underflow...?
😁
One of my major fears while learning cloud. There should be a limit for how much you spend on the services, but I think no provider has this as a configuration.
They do actually, but it's not as simple as it should be. I talk about it in the video :)
I've heard many tales about people forgetting to turn a demo project off but all of them just contacted their cloud providers (GCP & AWS, not sure about Azure) and all them replied "np" and cancelled their billing - Still I really want to watch this video asap. Great content as usual man!
@@Fireship which you have not published yet!
If you forgot something you can call your provider and request a refund. Yes, it works!
AWS provide it as well
I'm so glad we're on premise. We recently had a problem in production because we loaded thousands of records into memory by mistake, spinning up CPU and RAM usage. This made some customers unhappy because they couldn't use our service, but imagine this happening in the cloud. Unhappy customers AND a bill for useless work done!
You still paid for the hardware wear and tear, you still paid for the electric, cooling, any networking costs, etc. It just feels good because the bill isn't lumped into "here all your compute, storage, etc usages now pay us".
@@rickytorres9089 But it's also a natural barrier since we could only use up the resources we physically have. While cloud providers have cost and scaling caps, it's easy to configure them wrong. One misclick and you spin up hundreds of instances.
@@rickytorres9089it feels good because that mistake probably cost them a few cents
@@rickytorres9089welp, all method has pros and cons
@@rickytorres9089there's basically no CPU/RAM wear, so there's at least that
Yes, I did burn money in the google coud, 5600$ bill in 4 hours - was attached by a scraping bot and thanks google cloud they understood and "reset" the bill
My first experience with cloud computing was with a simple GCP windows machine that had set rules (I explicitly set it to NOT grow, to avoid cost). It fit well into the free trial, so I just let it be. I deleted the machine after 6 months (out of 12 for free trial) and never really used GCP again.
Then I got a bill for 50$ for a machine I didn't even have access to (because it got deleted), and only thing their support said is to tell my bank to block it.
Nice
It's not 24 hours a day for 12 months, Compute Instances have a limited free trial time by hours. And just by reading 6 months, I am pretty sure you exhausted that free time limit of Compute Engine.
😊 😊
6:00 It's interesting 69k/71k of the budget was related to Firestore reads pricing, whereas if we compare it to Oracle NoSQL database a 116B reads would cost around 287$ (99.5$ cheaper than Firestore reads pricing). Which means if Oracle is able to commercially sell these reads with such a price and gets a profit from it the actual cost is even much less, meaning when GCP takes this billing it loses almost nothing.
Incroyable.
Awesome. As a frugal freelance dev, cost is one things that I gotta watch out for. Thanks @Fireship
Maybe it happened to google today, they were down for an hour!
I think they were fixing a hack or databreech but I still need to get some details.
@@asandax6 They should clean out all those Asian girl bots in comments as well, they are everywhere.
@@lardosian And those bots with sexy lingerie
This is the reason why I am using good old VPS with monthly fixed pricing.
So true
You can sleep without thinking of your cloud bill as well
I had a hacker rack up around 32k on my behalf on AWS a couple years ago. Not fun. Gladly Amazon believed me and credited my account.
this explains why their pricing in general is so much above classic hosting providers like hetzner etc - I don't think those cheap provider would be that customer friendly if I would forget to delete an expensive server for a long time.
There should be a feature like simulating the cloud run functions or some other services to catch errors before deploying to production and in this Artificial intelligence might help to catch up errors early than an average person would.
write test units!
@@alii4334 Incroyable.
but you need to run the code to see the errors, and the code takes google cloud levels of computing to run... you can't simulate it without running it, that's the actual halting problem...
@@unflexian I agree.
This has actually terrified me into never playing with anything on the cloud.
Using Cloud Overflow now!
Somebody bought that domain.
made me go double check my aws billing dashboard... just in case
lol! I just did the same on firebase hahaha
Never ever ever hardcode your API key values in your code, even for one second. You will probably forget and check the code in. Use environment variables or cloud secret managers.
i just gitignore everything
@@SUPABROS what exactly do you have on the git than?
@@feritperliare2890 maybe only .gitignore 😂
@@_imawesome nah the gitignore is on his personal computer doesn’t go up maybe he put a read me accidentally
Incroyable.
Thanks to Fireship
I've built a decent enough startup which can work on its own
Appreciate the free schooling dude.
Somehow you always know exactly what I’m researching and come out with a perfectly explained video on it. Thank you sir
Something I just cannot wrap my head around is WHY you would use a cloud service in the first place if you don't need the instant scalability. Heck, you might use your MBP or a Raspberry Pi at first and when your project starts out and you need to deliver a page quickly, just use a couple of geo-located VPS instead.
However I think I might be trapped in an old mindset here - I'd be really happy to hear why you would use the cloud in what I think is 95% of the use-cases. It just seems utterly expensive for what it is.
I used the cloud in my minecraft game cus my dad was paranoid about port forwarding
It might be because it is easier, and also can be started free. I suppose no one would want to run the database on their laptop and let it run everyday, or not anyone has a PC that can run it everyday, or not anyone had/would bought a spare device for it.
Sorry for my bad English.
Dear Fireship, THANK YOU for this PSA, from the bottom of my paranoid heart.
5:00 I think a better term is a recursive call.
Technically it is an infinite loop (since there's always a main event loop somewhere), but an infinite loop is more conventionally a while or for loop that never ends.
No it's not. A recursive call is when a function is calling itself without a termination condition, and infinite loop is when a data structure doesn't have a condition that fulfills to terminate the cycle.
Or you could just get a cloud server instance and connect to that for a fixed monthly cost that's independent of use. It might not be the most optimal for large scale applications or certain workflows, but if you're learning, testing, or just hosting small scale projects, it works perfectly fine. I have a handful of small apps that I deploy through Docker on an EC2 instance.
The reason I am always almost on my wits end when on AWS.😅 most basic thing is I always makes notes of service I started and access so that I won't forget it later on so that I don't need to see that uncanny bill.
Good idea. You still need to be careful. Behind the scene so many provisioning happens for which you may be billed. For example, if you create a managed instance group as a backend service for a load-balancer, then a network endpoint group gets created automatically behind the scene. You may delete the backend service later, but the NEG doesn't get deleted automatically.
Thanks!
We had a similar issue with AWS where a hacker got hold of one of an old emplyees api keys and setup a load of lambda functions. By the time it was noticed our bill was $15,000 for just a few weeks. Thankfully in the end Amazon refunded the whole lot, but it wasn't easy and was very scary.
Protect your API keys like your life depends on it and regularly switch them out and clear out unused ones.
Yeah it was probably the old employee who did it tho
I made a mistake when using AWS gamelift during my bachelor assignment two years ago: i forgot a fleet running a game instance. I got $150 bill, but after contacting them it was deleted. Very good service, I can highly recommend AWS. 👌
I made one in firestore. A document needed to be updated based on values in an update. I hadn't taken into account an old client, which would result in a calculation turning out to be NAN. One and a half hours later, with a SINGLE old client causing this, $40 was used. This could have escalated like a nut, if I hadn't seen it by random luck.
I was doing a project on aws and I am happy I found this video before starting to use the cloud lol
I'm so scared after watching this
Just an addition to the topic of leaked IAM Keys: GitHub nowadays has a "scanner" which scrans every commit for known Keys (e.g. IAM) and immediately disables this key by telling AWS (this literally happens in less than a minutes) and sending you a mail that you f***ed up. I only know this for AWS but I guess that they also have this mechanism for e.g. GCP and Azure :)
Azure for sure as GitHub and azure are both from Microsoft.
@Fireship is a trully film director ! made me feel like I was watching a spy movie from 1:30 hahaha !
"cloud overflow" is a useful coinage, thanks for that
At a convention, I was talking to a Microsoft employee, he was apparently a higher-up. He accidentally racked up a $5,000 bill just playing around in Azure. He talked to his boys and got the bill removed. All kinda scary!
That time I accidentally deleted a whole kubernetes cluster instead of a single node pool on Google Cloud. It was scary how easy it was to delete it automatically. Thankfully it was a test cluster and it took only 2 days to restore it completely from scratch. But my face when I realized that I did it and that there was no turning back :D
That's why dedicated servers are better for messing around :)
I appreciate the The Office clips you put in there 😂
You talk about disasters in cloud while in the same day pretty much every google service was down for 1 hour
Exactly the way I planned it!
@@Fireship 👀👀👀
my firebase bill this month was a whipping $0.03 hahaha
What's your app?
best web dev video of the year
consistently impressed by the quality of your videos! one of the best programming channels on yt
I've been binging your videos, thank you so much.
I accidentally did this, but to a much lower level. It was still surprising to see my bill go from the usual $5 to $500 though
google and amazon really needs to make a tutorial on this
I recently read an history about this topic. Creepy things can happen in the cloud 💀
And your bank account too 💀
Salesforce has limits on recursions, so if there are infinite loops, they just roll back the entire transaction and throw an internal error.
every application should have it. poor written apps don't. So hiring cheap developers lead to expensive bad solutions.
That y in embedded system standard(misra c) doesn't allow recursive functions
Jeff: I'm gonna go ahead an wrap things up there.
My brain: Nooooo!
It's never enough, your content gold, you wonderful person, you!
In fear of cloud overflow, I've been using compute engine mostly. It looks like its a flat rate, and using it is almost like using a raspberry pi.
That’s why I use my own dedicated servers...
"which is a brand new word I just coined" 😂
Now, I know why time complexity and space complexity is important.
I got so scared that I just took down a test project that I had deployed on vercel 2 days ago for my portfolio after watching this because i remembered that it had my fire store(free tier) config exposed in front-end. I dont know if what I just did was plain stupid or what but now I'll rather do my research on it first than blindly deploying it.
This is an old video but its noteworthy to add that I was in a similar situation like the startup thankfully they were reasonable enough to refund over 90% of the bill. I am now afraid of touching the cloud again. I still have depts to pay on AWS too
Congrats on 500k 🎉 🎊
Thanks for reminding me about the billing :D I am on AWS free tier and using it over one month but just realized that I have 0.62$ charge.
I love burning money
Yea especially *investors*
burn it on me
Thank you for this. As someone interested in cloud computing you made me realise it can get costly very quickly and unintentionally
I left a public IP up for a GCP server I had deleted once and ended up with a large bill. Called them and they refunded the whole thing.
I burned $6000 on some azure lab machines. We had just achieved gold partner status and I reviewed the estimated cost and it said $0. But I was just in the wrong place looking...
Wise by this lesson a few years later I told a colleague to be careful with his Azure subscription. He got himself an enterprise sql Analysis instance. $7000 spent there...
Not a long time ago I was exploring kubernetes and was following an Indian tutorial of how to set everything (Ec2, S3 and Route53). Within 2 hours I had a 3€ bill when I thought I was in free tier... Somehow everytime I killed an EC2 instance a new one outside of the free tier was created... It was just 3€ and AWS gave me a 3€ voucher when I explained what happened. It was enough for me to be scared enough to try again
Keep up these top tier videos mate! Cheers
There is massive risk in using cloud so I cannot comprehend the rush to get there. If you are a startup it may be the quickest way. For established companies, you can reduce risk by having your own platforms.
When I was a newbie I put minimum instances as 1 for 30-40 cloud functions with 1 GB memory 😂 I was raking in $300-400 per day in bill 💸
AWS Cost Explorer is about the Services that you forgot to turn off after use..
I shutdown my RDS instance only to realise that it starts back again after 7 days.
Since when did you premiere stuff ?
I remember racking up $1000 from AWS and I was sweating bullets cause I was basically trying out some things. I was relieved when AWS forfeited my bill
I've been an Azure customer for 9 years and I have NEVER ONCE jacked up an unintended bill! Very scary but if you're smart, one shouldn't worry too much but just be smart about it!
Recursive function is scary, it's not as obvious as regular loops... That's why database orm is good, they help you avoid a lot of edge cases
In my cloud computing class I accidentally made a recursive call in a function that calls a lambda endpoint. I've never been so terrified in my life, until I realized my CORS wasn't set up properly so the function calls never reached AWS. I will never be mad at my bugs again.
That's why I want the "auto-shutdown" to prevent unintentional bills. But on the other hand, people will just abuse it and not pay. On their perspective, "charge by default, cancel later" is safer option for everyone and forces devs to be more careful.
It’s negligent and abusive for a cloud provider to allow customers to instantly rack up a 6 figure bill. Especially when they market the “free tier.”
I don't see how you'd abuse it. If you shut down your project before any cost occurs... That's similar to some free tiers like Railway which gives you X free hours per month
Thank you. This video has caused me to paranoid check my AWS, Azure, and Firebase billings...
woudlve spent 1k a month with cloud run because of cpu time billing, was able to do the same task with twice the amount of serverless functions with only a 4$ a month bill
The reason why we should choose either DigitalCloud or Linode
Good to hear how recursive function to not only hard to understand but can also cause disasters like this
I understand your suggestion to not make infinite loops, but what if someone is just endlessly computing (with no scaling / explosion of computational complexity as described above) rather than responding to user events?
To take an artificial example, let's say I'm just getting a list of prime numbers. So I do while(true) { i++; if(isprime(i)) { log(i); }}. Is there an alternative? I guess I could do batches of numbers, with human intervention in between (e.g. every million iterations, store i, wait until human says proceed), but this doesn't seem to really solve any problem.
So... is there a problem with this? And if so, what's the alternative?
when you've just learnt about recursion and next thing you see is that. 😂
Holy crap I still remember the day I got $600 bills from google cloud, I was doing some testing and deployed a small project to the google cloud, since I have $200 dollars free credit I didn't worry that much, after finishing the whole thing I forgot to stop the VM and that was it, a month later when I check the google cloud I realized I got billed $600.
A wise guy once said : " Don't pay for what you use. Pay for what you forgot to use "
wait, i still have running minecraft server since 2013 omg what happen next (3am) (gone wrong) (scary)
Ah yes, this is why gym memberships are such a good business model.
Thank you for making technical subjects interesting.
I spent like 50 times the budget in a bad setup of Google maps api calls. It was one of the worst days in my life.
I got a £300 bill on AWS many years ago while studying, I was terrified as it was a lot of money for me back then, they returned the full amount without asking anything
I kind of did, because it was my $300 free credit that got exhausted in a single day.
The way it happened was that I setup an extension in Firebase that auto translate records from Firestore to 24 languages . After uploading loads of records I mean 180 records with multiple key-values pairs to auto translate on document create by the extension. I ended up with $0 after uploading such record twice, this was because I was using a service that I did not understand how its billing works. Not understanding how the service billing works was the real problem in my case.
Man, I'm laughing all the way through! Awesome video! :)
I was going to try and learn cloud stuff, but got spooked off by the potential of something like this since there is no kill switch
Crazy that there isn't some law that demands cloud providers to offer a max limit kill switch.
Once I got 5000$ bill from aws. Luckily they waived it off. Thanks.
I accidentaly spent 250$ on aws. It may not sound like much, but it is actually a quarter of my monthly salary.
OMG AWS indeed is sooo expensive. It's almost criminal.
Go serverless, we pay peanuts for running Lambda's over EC2's
F***ing Bezos *breaths in
Go for lightsail VPS, cheapest VPS in the earth after vultr. AWS is indeed the cheapest unless you configure something wrong and expose everything outside
wrong
@@mr_wormhole Nah hetzner.cloud or scale away are the cheapest hetzner gives you 2gb ram, 20gb ssd, 1 vcpu for 3 € no way to beat that
I have seen USD 600,000 AWS bill over a Friday afternoon fuck up... imagine you have a few petabytes of data in like 2-4kb files on s3... not super cheap to store but okay as long as you don't really access this data much. Now imagine that you just make a small change to the storage policy that dictates that all files older than 3 months should be moved to glacier. One line change... causing billions of delete operations from s3 and billions of writes to glacier... No VMs in sight that you could stop, because it's an internal aws process. We got a discount for the fuck up, but still ended up paying like 150k
This should be interesting, can't wait!
I ran a BigQuery search on a publicly hosted dataset just to explore the data and get a feel for it. I kinda gave up after 20-30 mins because the latency/speed was really bad and I'm used to Pandas rather than SQL, so I wasn't really sure of what I was doing.
Got a $500 USD bill for search results that never showed up :)
Hi jeff , can you gather all "firebase" videos into one playlist please?
Main reason why big giants and sane companies define cloud governance model to avoid these mistakes.
This is a valuable info !
The comedy is killing me 😂. I love this guy
If I'm not mistaken, firebase counts readings when executing security rules, right? If someone takes the public APIs on the frontend and tries to run readings (even without success), wouldn't that be a kind of "budget attack?"
Seems like Heroku now have starting plan for $5 flat (Eco Dyno subscription)
I racked up a few hundred dollar bill after running a VPN server for VPC access and I forgot to split the tunnel so regular traffic would not go through the VPN. 5 users soaked up about 10gigs of transfer costs in 3 days watching RUclips