Good points... :)

Yeah, I feel we are still some distance away from needing a
cluster...but we thought it's better to prepare in advance...

Session and Files will be a key headache...

On Jan 27, 4:07 pm, Lee Bolding <l...@leesbian.net> wrote:
> On 27 Jan 2009, at 05:44, Sumedh wrote:
>
> > I know there is a lot of variety in terms of amount of reads vs.
> > writes, complexity of processing (CPU required), security, speed
> > requirements, session requirements etc, etc. But still, if there are
> > some ad hoc basic conditions, which tell you when you need to start
> > thinking about clustering your servers or database, it'll be useful...
>
> When you get consistent complaints from your users that the service is  
> too slow ;)
>
> It's important that you understand HOW and WHY your application is  
> slow though - just arbitrarily adding an extra webserver won't help  
> you if it is your database that is the bottleneck.
>
> Also, clustering isn't always the answer - sometimes you can get away  
> with moving all of your static assets to Akamai or S3 (or even  
> creating a load of DNS aliases to fool users browsers into downloading  
> more static assets in parallel), or using Memcache to relieve some of  
> the strain on your DB (assuming you've already done as much as you can  
> to optimise your table structure, indexes, queries etc). There are a  
> bunch of tricks, but as I already said - you need to understand where  
> the bottleneck is first, otherwise you'll be wasting time and money  
> fixing a problem that doesn't exist.
>
> Once you get into database replication, sharding etc... that becomes a  
> whole heap of pain which is an entire subject in itself.
>
> The VERY FIRST thing I'd do - before launching ANY live application -  
> is to move the Symfony rewrite rules from .htaccess into my  
> httpd.conf  - sitting in a .htaccess file they need to get read from  
> disk every time a page is requested, which is a massive performance  
> hit. Load it once, at server start up, and it's never touched again  
> until the server is restarted.
>
> > Does symfony have something for out of the box clustering?
>
> Symfony supports DB sessions - obviously once you have more than one  
> server involved, chances are that a visitor is not always going to hit  
> the same server for a series of requests, so file based sessions are  
> no use.
>
> I always use DB sessions, regardless of how many (or few) servers I  
> think I'll eventually deploy to - it saves a headache in the long run.
>
> There are some other plugins in the plugin repository which may help -  
> I haven't yet seen one that allows you to specify a list of DNS  
> aliases for static resources, and randomly distribute these on the  
> page via the link_to helper... maybe I'll do that plugin next time I  
> have a need for that functionality :)
>
> > any good resource I can go through?
>
> Cal Henderson's (Flickr) book - Building Scalable Websites.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"symfony users" group.
To post to this group, send email to symfony-users@googlegroups.com
To unsubscribe from this group, send email to 
symfony-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/symfony-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to