How come the discourse server is so fast?


(Tal Pergricht) #1

im thinking about building a community around discourse, yet there seem to be some difference in speed from the discourse site forum to other discourse forums i notest.

how can i make the discourse speed the most optimal? something to do with server? (the users aare gonna be only locals) optimaizing?

thanks.


(mountain) #2

Meta’s servers and their hosting configs.

I hope those links may help with what you seek.


(Rafael dos Santos Silva) #3

I’m runnig Discourse on a VPS with 4 Cores + Another one to Nginx Reverse Proxy + a shared PostgreSQL instance and it’s fast.

We have 100k+ users, 5k+ active per day, 20k pageviews day.


(Matt Palmer) #4

Summary: CPUs with fast single-core performance, minimising overcontention, and edge caching.

Taking those in reverse order…

Intelligent caching, as close to the user as possible, is the absolute single best thing you can do for the performance of any website or application. Connecting to a distant (in network topology terms) server to obtain a resource takes a lot longer than doing it locally (damned speed-of-light). With TLS involved, the impact becomes even worse. So, the more you can cache somewhere close (in network topology terms) to the user, the better off you’ll be.

Overcontention is how pretty much every provider makes their money, whether that be shared hosting, VPS, dedicated server rental, your ISP – everyone is putting more customers onto their systems than they have the resources to service, if everyone wanted to maximally use what they’re paying for to the maximum. It is only by gambling that not everyone is actually going to use what they’re paying for that allows providers make money. When that gamble doesn’t pay off, performance suffers.

Finally, dynamic page generation in Discourse (or, indeed, any website or application) is CPU bound, and it’s single-core CPU bound. Once the server decides it has to collect data together and munge it into a blob of HTML or JSON, the biggest difference you can make in getting that job done quickly is by having a single CPU core that runs very, very fast available to do that munging. It’s not the only factor, but it’s the one that’ll be the most obvious when you start experimenting. Database performance (and not having crap SQL) is the next most important, and then having a fast network to get the requests in and the responses out quickly is next.


(Tal Pergricht) #5

thank you!
let me clarify my question.
how can i make my server and speed optimum if i have very low budget?


(Matt Palmer) #6

Do what I’ve described above, within whatever limits you have in your budget.


(system) #7

(system) #8

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.