Symfony2: the world slowest framework

2,596 views

Published on

I benchmark effettuati su molti framework PHP negli ultimi mesi mostrano una netta inferiorità di Symfony2 rispetto agli altri. In questo talk parleremo del perchè i benchmark sulla velocità non rappresentano il vero valore di Symfony2, mentre lo sono la flessibiità, la modularità e l'aderenza a degli standard. Parleremo delle caratteristiche che rendono questo framework uno dei più usati in ambito PHP, anche solo considerando quanti altri framework stanno integrando parti di esso. Infine, parleremo di come questo framework metta nelle mani di chi lo utilizza strumenti molto potenti (e a volte complessi) e lasci la responsabilità di come utilizzarli a noi sviluppatori. In questo momento vale come mai prima la massima 'da grande potere deriva grande responsabilità'.

0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,596
On SlideShare
0
From Embeds
0
Number of Embeds
65
Actions
Shares
0
Downloads
21
Comments
0
Likes
9
Embeds 0
No embeds

No notes for slide

Symfony2: the world slowest framework

  1. 1. Symfony2 The world slowest framework venerdì 18 ottobre 13
  2. 2. What’s a framework? [...] a software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software. http://en.wikipedia.org/wiki/Software_framework venerdì 18 ottobre 13
  3. 3. Framework VS Library Inversion of Control venerdì 18 ottobre 13
  4. 4. Framework Value AND Technical debt venerdì 18 ottobre 13
  5. 5. Speed venerdì 18 ottobre 13
  6. 6. Procedural VS OO Code venerdì 18 ottobre 13
  7. 7. Procedural VS OO Code venerdì 18 ottobre 13
  8. 8. Optimization venerdì 18 ottobre 13
  9. 9. Server VS Dev Costs venerdì 18 ottobre 13
  10. 10. Freedom to change venerdì 18 ottobre 13
  11. 11. What do you need? venerdì 18 ottobre 13
  12. 12. What do you like? venerdì 18 ottobre 13
  13. 13. Knowledge venerdì 18 ottobre 13
  14. 14. Community venerdì 18 ottobre 13
  15. 15. Symfony: beware of Steep learning curve venerdì 18 ottobre 13
  16. 16. Symfony: beware of from great power comes great responsability venerdì 18 ottobre 13
  17. 17. Why I choose Symfony Community venerdì 18 ottobre 13
  18. 18. Why I choose Symfony Adhere to standards venerdì 18 ottobre 13
  19. 19. Why I choose Symfony Frameworks are developers tools venerdì 18 ottobre 13
  20. 20. Why I choose Symfony No need for the full package [thanks composer!] venerdì 18 ottobre 13
  21. 21. Why I choose Symfony Based on HTTP [request/response, caching, reverse proxy, esi] venerdì 18 ottobre 13
  22. 22. To Production php app/check.php venerdì 18 ottobre 13
  23. 23. To Production AppCache.php is your friend venerdì 18 ottobre 13
  24. 24. To Production Doctrine query_cache_driver metadata_cache_driver result_cache_driver APC - Memcache - XCache - Redis venerdì 18 ottobre 13
  25. 25. To Production Profiler No, thanks. Always add ‘--env=prod’ to command venerdì 18 ottobre 13
  26. 26. To Production Logging Only errors, thanks. Monolog ‘buer_size’ parameter venerdì 18 ottobre 13
  27. 27. To Production Apache routes php app/console router:dump-apache -e=prod --no-debug venerdì 18 ottobre 13
  28. 28. To Production Assetic php app/console assetic:dump --env=prod --no-debug venerdì 18 ottobre 13
  29. 29. To Production Composer php composer.phar install --optimize-autoloader venerdì 18 ottobre 13
  30. 30. To Production PHP < 5.5 => APC PHP >= 5.5 => OPCache venerdì 18 ottobre 13
  31. 31. My Conclusion 1. Choose on your needs 2. Readability matters 3. Premature optimization is the route of all evil venerdì 18 ottobre 13
  32. 32. Thanks Filippo De Santis @filippodesantis fd@ideato.it venerdì 18 ottobre 13
  33. 33. Refs http://slides.seld.be/?file=2011-10-20+High+Performance+Websites+with+Symfony2.html#1 http://www.gregfreeman.org/2013/your-php-framework-choice-doesnt-matter/ https://igor.io/2013/09/02/how-heavy-is-silex.html http://stackoverflow.com/questions/16696763/why-is-symfony2-performing-so-bad-in-benchmarks-and-does-it-matter http://symfony2-checklist.com/ http://slides.liip.ch/static/2012-05-18_symfony-speed.html#1 http://www.slideshare.net/liuggio/rationally-boost-your-symfony2-application-with-caching-tips-and-monitoring http://www.nigeldunn.com/2011/11/24/my-last-thoughts-on-symfony2/ http://docs.doctrine-project.org/en/latest/reference/caching.html http://symfony.com/doc/current/index.html http://www.emanueleminotto.it/im-afraid-symfony-2-performances http://www.slideshare.net/liuggio/rationally-boost-your-symfony2-application-with-caching-tips-and-monitoring venerdì 18 ottobre 13
  34. 34. PICS http://www.flickr.com/photos/stankuns/8738770989 http://www.davehakkens.nl/ http://www.flickr.com/photos/takahiro/359406450 http://www.flickr.com/photos/mayhem/2939259129 http://www.flickr.com/photos/pfv/2739621207/ http://www.flickr.com/photos/kitty-kat/6049220331 http://www.flickr.com/photos/mtwashington/5062599268 http://www.flickr.com/photos/harlequeen/6371193319 http://www.flickr.com/photos/28990363@N05/6414310131 venerdì 18 ottobre 13

×