Reply To: scalablity of buddypress
Sorry I didn’t explain this as well as I could have. You shouldn’t need a lot of servers, just one very good server. So if you’re using cheap shared hosting at $5-10/mo, that’s not going to cut it once your site scales up large. In that scenario you’re sharing bandwidth and resources with many other sites, and the server itself (which is just a computer really) is likely not all that fast if you’re not paying much. You can rent your own server, or a virtual private server, and it can have very high specs all dedicated to your site. Like 24 cores, 2-4gb RAM, etc. That will be fast. You can get that for $50-$100/mo depending on what you choose/need. And you can always migrate a site from one server setup to another. A developer experienced in moving sites can usually do this within a day.
A HUGE site does need multiple servers. Facebook for example probably has thousands of servers all around the world. But keep in mind how much raw data they must serve. A BP site at 100,000 users can probably be delivered from one database, from one server. The guiding strategy is to take as much load off of that server as possible, and then make sure the server is good enough to handle what is left without crashing or stalling with not enough RAM. “caching” at the server level is a method to take load off of the server. Using a CDN takes load off of the server. etc.
I’m sure speed is an issue that the BP team thinks a lot about, but it’s a hard one to tackle as people are all customizing everything and it’s not really best practice to include caching within plugins. Although best practice isn’t everything, because in reality a solid caching system for BP would solve a lot of speed issues. It would need to cache individual components and break them live with AJAX, or something like that – not my expertise. I can imagine this interfering with many custom setups and plugins however, so like I said, probably not a simple fix.