I don't understand why you wouldn't just use Elixir/Phoenix if you need to scale?
Scaling Rails and Postgres to millions of users at Microsoft
21–30 of 96 posts
Re: Scaling Rails and Postgres to millions of users at Microsoft
#22Postgres can be scaled vertically like Stackoverflow did. With cache on edge for popular reads if you absolutely must (but you most likely dont). No need to microservice or sync read replicas even (unless you are making a game). No load balancers. Just up the RAM and CPU up to TB levels for heavy real world apps (99% of you wont ever run into this issue) Seriously its so create scalable backend services with postgres…
> One server What happens if this server dies?
maybe add another for good measure....if the biz insurance needs extreme HA then absolutely have multiple failover
my point is you arent doing extreme orchestration or routing
throw a cloudflare ddos protection too
Re: Scaling Rails and Postgres to millions of users at Microsoft
#23Postgres can be scaled vertically like Stackoverflow did. With cache on edge for popular reads if you absolutely must (but you most likely dont). No need to microservice or sync read replicas even (unless you are making a game). No load balancers. Just up the RAM and CPU up to TB levels for heavy real world apps (99% of you wont ever run into this issue) Seriously its so create scalable backend services with postgres…
That works for the performance aspect, but doesn't address any kind of High Availability (HA). There are definitely ways to make HA work, especially if you run your own hardware, but the point is that you'll need (at least) a 2nd server to take over the load of the primary one that died.
Re: Scaling Rails and Postgres to millions of users at Microsoft
#24Postgres can be scaled vertically like Stackoverflow did. With cache on edge for popular reads if you absolutely must (but you most likely dont). No need to microservice or sync read replicas even (unless you are making a game). No load balancers. Just up the RAM and CPU up to TB levels for heavy real world apps (99% of you wont ever run into this issue) Seriously its so create scalable backend services with postgres…
Stack overflow absolutely had load balancers, and 9 web servers, and Redis caches. They also use 4 SQL servers, so not entirely vertical either. And they were only serving 500 requests a second on average (peak was probably higher).
Re: Scaling Rails and Postgres to millions of users at Microsoft
#25Postgres can be scaled vertically like Stackoverflow did. With cache on edge for popular reads if you absolutely must (but you most likely dont). No need to microservice or sync read replicas even (unless you are making a game). No load balancers. Just up the RAM and CPU up to TB levels for heavy real world apps (99% of you wont ever run into this issue) Seriously its so create scalable backend services with postgres…
Re: Scaling Rails and Postgres to millions of users at Microsoft
#26Re: Scaling Rails and Postgres to millions of users at Microsoft
#27Re: Scaling Rails and Postgres to millions of users at Microsoft
#28Postgres can scale to millions of users, but Rails definitely can't. Unless you're prepared to spend a ton of money.
Their baseline was 800 instances of the Rails app...lol.
I'm not going to name-names (you've heard of them) ... but this is a company that had to invent an entirely new and novel deployment process in order to get new code onto the massive beast of Rails servers within a finite amount of time.
Re: Scaling Rails and Postgres to millions of users at Microsoft
#29Earlier quoted context omitted.
Stack overflow absolutely had load balancers, and 9 web servers, and Redis caches. They also use 4 SQL servers, so not entirely vertical either. And they were only serving 500 requests a second on average (peak was probably higher).
was it? i read it was a huge ram server
Re: Scaling Rails and Postgres to millions of users at Microsoft
#30Postgres can scale to millions of users, but Rails definitely can't. Unless you're prepared to spend a ton of money.
For real. Show me a company that has scaled RoR or Django to 1 million concurrent users without blowing $250,000/month on their AWS bill. I've worked at unicorn companies trying to do exactly that. Their baseline was 800 instances of the Rails app...lol. I'm not going to name-names (you've heard of them) ... but this is a company that had to invent an entirely new and novel deployment process in order to get new code…
Rails these days isn't the top of the speed meters but it's not that slow either.