3 ms·
This article fails to mention the issue of needing a database. It doesn't matter how seamlessly your application can scale if your data backend won't scale with
by jjeaff 7y ago
This article fails to mention the issue of needing a database. It doesn't matter how seamlessly your application can scale if your data backend won't scale with it.
They mention Cloud SQL, which is of course instance based and would run into scaling issues if your app got suddenly hammered. Not to mention, the cost isn't $0 if your app gets 0 traffic, you are going to have to pay to keep that running around the clock.
I realize some applications are very heavy on the app side and light on needing to hit the DB, but in my experience, that isn't very common.
- deleted 7y ago[deleted]
- steelaz 7y agoAWS has Aurora Serverless (https://aws.amazon.com/rds/aurora/serverless/ https://aws.amazon.com/rds/aurora/serverless/) for that purpose with MySQL and Postgres compatible engines. But I haven't heard anyone using it for side projects yet.
- kevinsundar 7y agoThey also have RDS Proxy (https://aws.amazon.com/rds/proxy/ https://aws.amazon.com/rds/proxy/) that lets you pool connections from tons of lambda instances in order not to overwhelm your DB when scaling up.
- ec109685 7y agoI wonder where the threshold is that the proxy is beneficial. MySQL is actually really good at handling new connections.
- chris_st 7y agoNote that you can either run Aurora Serverless constantly (at a cost of about $43 a month) or have ~30 second startup times if the instance has timed out (~15 minutes).
- ramraj07 7y agoA colleague keeps reminding me that in the end, if you don't need ACID, you can just use S3 as a key-value database and never pay more than pennies a month (and you get infinite scaling). Just depends if you need a db just for a few minor use cases or the app fundamentally depends on it
- onionjake 7y agoSee https://docs.aws.amazon.com/AmazonS3/latest/dev/optimizing-performance.html https://docs.aws.amazon.com/AmazonS3/latest/dev/optimizing-p... for more specific guidelines on S3 scaling. It used to be you had to be careful and use randomized prefixes... It looks like that might no longer be the case. Also note there is a limit (arguably pretty high) per prefix on request rates.
- jjeaff 7y agoAgree. Except I would keep in mind that AWS data egress is very expensive, so if there is any heavy media involved, you would also want to put a CDN in front of s3 with proper caching or you could find yourself with a hell of a bill from AWS. So if you are serving up just a few megabytes and hit a few million page views you may find an AWS bill for a few thousand dollars.