IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

mesurer les performances d'une application Symfony (optimiser son code)


Sujet :

Symfony PHP

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut mesurer les performances d'une application Symfony (optimiser son code)
    Salut à tous,

    Quel serait le meilleure moyen de surveiller une application symfony ?
    Une sorte de monitoring général. J'attends par là un outil à utiliser coté développement pour mieux optimiser son code et pas forcement avoir une visualisation des utilisateurs qui utilisent l'application.
    Il ne s'agit pas d'avoir exactement les mêmes informations que peut fournir google analytics par exemple, mais de l'orienter plus travail et développement au quotidien.

    Un truc qui pourrait nous dire le temps de traitement d'un controller ou d'un twig à rendre la vue par exemple.

    Sinon comment travaillez-vous pour optimiser au mieux votre code ?


    merci de vos retours

  2. #2
    Membre expert
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Points : 3 004
    Points
    3 004
    Par défaut
    yoo man rastafariiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii


    j'utilise ce que propose Symfony dans le profil (timeline), on y vois le temps pour le controller, twig et les requetes doctrine le tout sous forme de graphique....


    it's magic

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 168
    Points : 219
    Points
    219
    Par défaut
    tu devrais essayer de voir ce que pourrait t'apporter des outils comme Xdebug et kcachegrind par exemple.

  4. #4
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 546
    Points : 219
    Points
    219
    Par défaut
    Firebug et le mode "Réseau" donne aussi des indications sur les temps de chargement des pages....
    Jérôme

  5. #5
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    Concernant le profiler SF et Firebug ce sont effectivement de très bon outils pour développer. Je dirais même indispensable concernant firebug. Rien à redire la dessus.
    Mais c'est 2 outils on le même concept de travail qui me gène un peu dans le cadre d'une véritable optimisation. Car ces outils sont pensés uniquement dans le cadre de la page en cours chargé actuellement et non un système qui puisse enregistrer, comparer etc....

    Attention je suis peu être un peu trop exigeant mais par principe je suis venu ici voir ce qu'il pouvait exister d'autre par pur hasard.

    Je ne sais pas que XDebug fournissait un monitoring également. D'ailleurs il faut vraiment que je pense à le mettre en place afin de voir si ca peut vraiment m'aider dans un 1e temps au débuggage. Alors si en plus il peut offrir un systeme de monitoring ou d'optimisation pourquoi pas...

    Merci pour kcachegrind je vais regarder ca également.

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 168
    Points : 219
    Points
    219
    Par défaut
    Comment vous debuger du php avec Firebug ?

    Xdebug c'est l'outil de debug pour php .... il va te permettre de voir ce que php fait de ton code et de mesurer chacune des actions .....
    Kcachegrind et un GUI capable d'afficher des callgrind ....

    Nom : Capture d’écran 2014-09-02 à 00.04.47.png
Affichages : 878
Taille : 325,0 Ko

    Pour l'optimisation, y'a pas de secret, une fois que tu sais ou tu as fait du mal à php tu (te) corriges

    En mode debug tu peux aussi créer un DataCollector, faire ta collecte et te rajouter un petit panel dans le WebProfiler.

    Maintenant y'a plus qu'a ...

  7. #7
    Membre expérimenté Avatar de Nico_F
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2011
    Messages : 728
    Points : 1 310
    Points
    1 310
    Par défaut
    C'est là qu'on voit la différence entre un bon debugger et un mauvais debugger.

    Le mauvais debugger, il passe sur ta page, il te retourne des résultats de perf, et tu corriges ...
    Le bon debugger, il passe sur ta page, il te retourne des résultats de perf, et tu corriges ... mais c'est pas pareil.

    Plaisanterie à part, le profiler de Symfony est à mon avis le plus adapté pour connaitre les temps d'exécution de chacune des couches par lesquelles tu dois passer.
    C'est là que tu te rends compte qu'un listener d'évènement un peu lourd appelé sur l'event kernel.request, par exemple, fait beaucoup de mal à ton application (puisqu'il est appelé à chaque chargement de page).

    XDebug & Kcachegrind, bien oldschool, toujours efficace, mais un peu désuète quand on a le profiler de Symfony qui est plus simple à prendre en main et qui est largement suffisant pour 90% de l'opti.

    Et puis après on regarde la console de son navigateur (Chrome, Firefox, Safari ... on l'oublie tout le temps celui là ) mais comme tu dis : tout ça, ça ne te retourne les résultats que d'une page à la fois.

    Alors si tu veux monitorer toute ton appli, essaye NewRelic. Ça va te permettre de monitorer l'ensemble de ton appli, de voir quelles sont les routes qui sont les plus lentes, les plus consommatrices de ressources, les requêtes les plus lourdes etc, sur l'ensemble de ton site. Ca te permet de voir les pages les plus consultées et de faire de l'optimisation sur celles là en particulier pour pouvoir mieux cibler ton travail d'amélioration. Période d'essai de 30j gratuits avec toutes les fonctionnalités, et après ces 30 jours tu as toujours accès au monitoring, et ils te virent quelques fonctionnalités mais c'est toujours très utile.

    Évidemment, ce logiciel se greffe sur un site déjà en production avec du traffic.

    ++

Discussions similaires

  1. Réponses: 9
    Dernier message: 24/03/2015, 23h12
  2. [Delphi XE2] Améliorer les performances d'une application
    Par Pierre GIRARD dans le forum Débuter
    Réponses: 10
    Dernier message: 11/12/2014, 22h49
  3. Réponses: 7
    Dernier message: 30/01/2013, 11h22
  4. comment augmenter les performances d'une application
    Par jasminblanc dans le forum Firebird
    Réponses: 1
    Dernier message: 17/07/2007, 19h39
  5. Mesurer les performances d'une application Windows
    Par Kr00pS dans le forum Windows
    Réponses: 1
    Dernier message: 12/02/2007, 13h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo