Tim
Lord of Servers vanilla
Hi there.Hello vanilla community,
we're currently evaluating vanilla for a roughly 7k members community (somewhat tired of vbulletin). Questions regarding performance/scaling came up.
-How big is the biggest community vanillaforums.com hosts?
-Is that a special version of vanilla forums or can it be done with the stock downloadable version too?
-Would you recommend vanilla for a 7k-8k members community? Roughly causing 70-100GB/month traffic.
Thanks for any help
Rgds
Answers
422 Real Estate Australia , now open Check it out
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •I know this is a somewhat generic question thats probably hard to answer. I'm speaking just ballparks. So any help is greatly appreciated.
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •Generally the query's aren't bad, although I would not have a global activities, it is mostly mindless gibberish anyway, and it can slow things down. The user notifications and activities you might want to keep, depending.
I understand that some run on nginx with micro-caching
Vanilla main plus is it adaptability, but it might be more rough around the edges than you are used to. It suits developers, first and admins second.
Don't PM about development, I'm not currently taking on clients.
grep is your friend.
- Spam
- Abuse
- Troll
1 • Off Topic Insightful 1Awesome LOL •Tim,
thanks for your reply. This was exactly the kind of information I was looking for.
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •I'm curious about why it makes sense to run so many servers, instead of giving more resources to the ones you already have?
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •Load Balancers
Since all traffic comes in through the load balancers it's really nice to have more than one just in case one goes down. That being said, I wouldn't lose too much sleep if I had only one load balancer. The load balancers are actually tiny servers and are never at load.
Webfronts/Webservers
We have four of these because if one web front goes down then it will only be a 25% reduction in our service. If we scale up a little more though we will probably go with three webfronts that are a little larger each.
Database Server
We do only have one database server and would prefer a master/slave scenario, but replication in MySQL is really a pain. Having multiple database servers used to be the absolute standard in scaling. Nowadays caching and nosql alternatives to mysql are a much better solution to scaling.
Cache Server
We only use one server for caching because memcached is very efficient and if the cache server goes down it's no big deal since the cache can always rebuild itself.
Combining Webservers
We've actually tried other combinations of servers. We ran with the cache on the database server for a while, but both those services need a lot of io so they were bottlenecking there. In the end we find it nice to be able to separate the services so that we can monitor what is and isn't causing bottlenecks. Sometimes it's difficult to pin point the culprit of a slow down if everything is mushed together.What would I use for the least number of servers?
If I wanted to use less servers, but could still use multiple servers then I'd have the following setup:* 1 loadbalancers.
* 2 webfronts running nginx and memcached.
* 1 database server.
What can I do if I only have one server?
If you only have one server then here is what you should do:1. Don't use apache. It doesn't scale at all. Use nginx.
2. Use memcached.
These two things will be your two biggest wins.
- Spam
- Abuse
- Troll
5 • Off Topic Insightful 5Awesome LOL •- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •Don't PM about development, I'm not currently taking on clients.
grep is your friend.
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •Vanilla Forums Senior Developer [GitHub, Twitter, About.me]
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •Honestly the mindset, except in transactional, is as it probably more how it should be in sql solutions but isn't, in other words much of data integrity is should be handled at the script/framework level, moving way from the old normalised way of doing it. A good example is how you zip the categories to the discussions.
Don't PM about development, I'm not currently taking on clients.
grep is your friend.
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •Don't PM about development, I'm not currently taking on clients.
grep is your friend.
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •@todd: have you tried mysql-proxy yet? it is useful when there are plenty same query send to mysql
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •I haven't tried mysql-proxy yet no. We actually don't have scalability problems on the database side right now though. I think that caching is almost always superior to replication.
We do want to get more into replication for availability though. Do you recommend mysel-proxy?
Man, why is mysql replication such a pain?
- Spam
- Abuse
- Troll
0 • Off Topic Insightful Awesome LOL •