200,000 Connections possible with linode? Lenny LEMP

NGINX + PHP-FPM running a Codeigniter app with mysql

Would this be at all possible on Linode setup? Load balanced?

I have been doing some reading and can see it would have to be a hefty solution.

Any thoughts would be great.

4 Replies

It's possible with Linode. The real factors here are your application(s) and how much of your system's resources they are using. As well as how you spread the load across different instances. The platform will not be a limitation.

Are these 200,000 concurrent connections or total over a specific amount of time?

-Tim

It would be a spike, so a post on a social media platform would have a link to our app.

I noted that the Linode load balancers to 10,000 concurrent.

You are correct that the NodeBalancers support 10,000 concurrent connections. You could add multiple NodeBalancers to your account and then round-robin them. This would essentially distribute the load across multiple ones until you hit the 10k connection limit.

In addition to some sort of load balancing solution, you would also need quite a few backends to handle such a large number of requests.

-Tim

Linode as a platform can scale to meet your needs, but as your application grows more and more, the complexity (or at least emphasis on) the load balancing solution will also scale. That's not a Linode thing, just a fundamental factor of very large scale applications. Is your application already designed to scale to multiple machines? You would want to have multiple database backend servers, multiple application servers, multiple front-end HTTP servers (although you could mix this with the application servers), etc.

It's not the sort of thing that can be done without modification to the web service, because there are a bunch of factors on multi-server applications that don't happen when everything lives on one box (or one application box and one sql box). Stuff like which server has the client's session data, how you handle multiple database servers, the differences you face when your PHP script isn't running on the same box as what accepted the initial HTTP connection such as what remote IP you see, etc.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct