-> we only use routing.yml to load our routes
-> we don't use session (our old frontend was not session-less and it
was a real pain in the ass !)
-> we do as few io as possible : only to write a few logs (2 lines in
one single file for each request)
-> our source code is not mounted via NFS
-> we've benched our XML reader classes and didn't find any issues
with them (8ms to read up to 300 XML nodes and create all associated
beans : it seems quite fair)

I dind'nt understand what you meant with "don't stat file with APC".
Can you be more specific please ?
Thansk !

Rémi

On Nov 16, 1:57 pm, Thomas Rabaix <[email protected]> wrote:
> 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é <
>
>
>
> [email protected]> 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 <[email protected]>
>
> > 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#p...
>
> >> 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 [email protected]
> >> To unsubscribe from this group, send email to
> >> [email protected]<symfony-users%[email protected]>
> >> 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 [email protected]
> > To unsubscribe from this group, send email to
> > [email protected]<symfony-users%[email protected]>
> > For more options, visit this group at
> >http://groups.google.com/group/symfony-users?hl=en
>
> --
> Thomas Rabaixhttp://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 [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/symfony-users?hl=en

Reply via email to