Some points you might check :

   - don't use event to load routes
   - don't stat file with apc
   - don't put object into session
   - avoid io
   - check that your source code is not mounted via a nfs (like) share
   - use a xml parser based on sax (
   http://fr2.php.net/manual/en/book.xml.php)
   - install xhprof on your production servers.



On Tue, Nov 16, 2010 at 12:25 PM, Alexandre Salomé <
alexandre.sal...@gmail.com> wrote:

> Create a pre-production environment, secured to disallow web access and
> enable the debug bar.
>
> symfony has some time-watching features in debug bar, it could give you
> some measures.
>
> Check the symfony environment and your configuration files : maybe your
> "prod" environment is not really ready for production.
>
> Also heard about XHProf for profiling :
> http://mirror.facebook.net/facebook/xhprof/doc.html
>
> Give it a try, and give us feedback ;)
>
> Alex'
>
> 2010/11/16 Remi <remi.alv...@gmail.com>
>
> Hi,
>>
>> I'm working on a Symfony project for the past 11 months. The project
>> is basically to throw away the old FrontEnd of a well-known shopping
>> comparator, written in java and to replace it with a brand new
>> frontend written in PHP with a Service Oriented Architecture (SOA).
>> Our high-level architecture is to have a light-weighted frontend in
>> PHP (using Symfony 1.4) and a WebService Aggregator written in Java
>> (Jersey framework) to ensure all call to underlined webservices are
>> done in parallal. This aggregator is extremly performant : it handles
>> more than 200 Queries Per Second (QPS).
>>
>> Our main issue is more about the PHP frontend. Despite all our
>> efforts, we can't handle more than 15 QPS on each server. Just to give
>> you an idea, here are a few key informations about our achitecture :
>>
>>    * 6 Servers with 4 physical cores (8 with HyperThreading enabled)
>> and 24GB of RAM
>>    * Using Symfony 1.4.1 with PHP 5.2.10
>>    * No database access : all datas are fetched using WebServices
>>    * Centos 5.4 Final 64 bits
>>    * Apache 2.2.3
>>    * APC cache enabled
>>    * using SimpleXml to read XML feeds (300 nodes tops) coming from
>> our WebServices
>>    * using mod_php
>>    * PHP memory limit is set to 128M in our production servers (we
>> noticed lots of performances issues with only 32M or even 64M)
>>
>>
>> Our FrontEnd does not handle complex algorithm. Basically, it get its
>> data from some High Performances webservices (all internal), read the
>> request, render the page and log some usefull data (access logs using
>> Apache and some custom logs for our business). Everything is monitored
>> closely and the bottleneck seems to come from CPU usage which reach
>> 100% pretty often.
>> We tried a few things :
>>
>>    * Using Apache FastCGI (quite complicated on Centos5.4 since we
>> have to re-compile it) : slight increase but is not worth all the
>> trouble it causes on our company architecture. Nevertheless, it seems
>> that we did some configuration mistakes and we need to bench it again.
>>    * Caching a few modules : header, footer, ads, ...
>>    * Replacing Apache by NGix : no change at all
>>
>>
>> For the moment, our average server time exceed 1 second which is
>> really bad compared to our old Java-based website (300-400 ms) and we
>> didn't have rollouted all supported pages or even all our countries
>> (we expect to double the number of connection by activating all
>> remaining countries).
>> Do you have any idea on how we could increase our performances ? Do we
>> need to directly contact SensioLabs to negociate some contractor time
>> (maybe a Symfony Guru ?) ?
>> Do you know some tools that can help us to profile our application in
>> production environment ? We've already tried XDebug on developer
>> workstations but we don't have the same exact behavior in production.
>> What I'd like to test is to (manually) instrumentate our source code
>> to add some timers around some potentially costly algorithms. So you
>> know any tool that could help us to do that ?
>>
>> I already have created a topic on Symfony forum :
>>
>> http://forum.symfony-project.org/viewtopic.php?f=3&t=30853&p=108430#p108430
>>
>> Thanks.
>>
>> --
>> If you want to report a vulnerability issue on symfony, please send it to
>> security at symfony-project.com
>>
>> 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<symfony-users%2bunsubscr...@googlegroups.com>
>> For more options, visit this group at
>> http://groups.google.com/group/symfony-users?hl=en
>>
>
>
>
> --
> Alexandre Salomé
> http://alexandre-salome.fr
>
> --
> If you want to report a vulnerability issue on symfony, please send it to
> security at symfony-project.com
>
> 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<symfony-users%2bunsubscr...@googlegroups.com>
> For more options, visit this group at
> http://groups.google.com/group/symfony-users?hl=en
>



-- 
Thomas Rabaix
http://rabaix.net

-- 
If you want to report a vulnerability issue on symfony, please send it to 
security at symfony-project.com

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