Symfony - General Thoughts

Symfony2 is pretty awesome, although we ended up going with Lithium for our project. We ran a bunch of ‘Hello World’ type benchmarks, and Lithium out-performed everything save ‘raw’ PHP. For ORM we ended up plugging Doctrine2 into it, for templating we use Twig. I love the way all the modern frameworks allow you to swap stuff out, it saves a great deal of work :slight_smile:

Fabien Potencier, the developer of Symfony, likes to make quips about Hello World benchmarks. He’s the first to admit that Symfony is one of the slower frameworks when tested against a simple Hello World application, and he recommends that you don’t use Symfony for your next Hello World website. :stuck_out_tongue:

In real applications, your database queries are much more likely to be the biggest factor that affects performance. Real applications will also have all sorts caching mechanisms – query cache, page cache, core compile cache. Some benchmarks don’t even give frameworks an opportunity to use their config cache, which seems silly to me.

I think all the major frameworks have been used in an enterprise context, and they’re all fast enough. So the factor you should probably be looking at is which framework helps you develop better.

I was just going to make the same kind of comment. A Hello World benchmark only tests the most basic of the basics. However, a real application has so much loaded on to it, each of the speeds of those parts really adds up.

The annoying thing is, the only way to get a true benchmark for any given project is to build it in both languages (which is never going to happen =p).

Lithium looks pretty cool, but I think for now I’m going to stick with Symfony. That 38ms Hello World project I did with it left me pretty happy. =)

samanime

I am currently ending development of a custom leads generation system in Symphony 2. Our team has been very happy with it; not as fast as some of our ‘ground up’ php apps but with no question has sped up development and given a common understanding of how the code needs to be done (conforming to the Symphony conventions).

We support a somewhat large user base with very few performance issues. As other posters have said caches, database performance even type of RAID configuration and switched networking really play parts in the speed the database component is more likely to cause the performance bottle neck… nothing you already don’t know. But from or experience Symphony 2 was a great choice.

Good luck with this.

Steve

Thanks Steve, good to hear from someone that is using it “out in the field” =p

Some of my sites are very simple. Bit more than hello world but not much. First thing I did was to duplicate a couple with S2 and deployed them side by side with the existing home grown ones. Didn’t really notice any difference in speed between the two.