This post has been de-listed
It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.
I run an ecommerce store and occasionally when we have a huge (predictable) traffic spike my database will reach capacity and everything breaks. We've got a big event coming up this weekend and I'm having trouble choosing which RDS size to upgrade my database to. I'll only be running this large size for 3 or 4 days so the price isn't too important as long as it's under ~$500 for that time span.
I'm currently running on a db.t2.xlarge which has 4 vCPUs and 16 GiB RAM. I'm not sure if I should be using t2 or t3 or m or r/x. Historically the database CPU has hit 100% and that's caused major problems, so I'm thinking I can skip the memory optimized sizes and that leaves me with "standard" or "burstable". But at the same time looking at the specs the memory optimized sizes can have more vCPU power than the largest t2 size - adding to my confusion. I'd much rather choose a "too big" instance size, I've already had the site crash during the launch of a promotion for this client so I really need to make sure that doesn't happen again.
Does anybody have some advice on how exactly to choose an instance size and what I should be looking at to make this decision? I know this is super dependent on my code and my SQL queries, but even some general advice would be nice. For example, when I have about 200 users on my site the db can hit 20% CPU usage, but it's unclear to me if this scales linearly or what. I'm expecting around 2000 users at once, but it could be as high as ~10K if things go well for my client.
Thanks yall, any and all advice is super appreciated - I'm very new to dev ops and my mind implodes every day from this stuff
Post Details
- Posted
- 3 years ago
- Reddit URL
- View post on reddit.com
- External URL
- reddit.com/r/aws/comment...