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 :

Symfony 2 améliorer vitesse de chargement [2.x]


Sujet :

Symfony PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2014
    Messages : 35
    Points : 61
    Points
    61
    Par défaut Symfony 2 améliorer vitesse de chargement
    Bonjour a tous

    Je viens vers vous pour essayer de résoudre un problème que j'ai sur un projet actuellement,
    Voila le problème est le temps de chargement de ma page d'index ( même les autres en général).
    Effectivement je suis de l'ordre de 12-18Secondes lors du premier chargement avec bonne ou une connexion de l'ordre 250Ko/s
    Mais pars la suite toujours vers les 6-8 secondes.
    Je crois savoir d'où viens le problème mon controlleur qui fait en 11907 lignes (pour ma défense c'est un projet qui a été débuter par quelqu'un qui débutait et que j'ai repris ( moi même débutant)), ce controlleur gère 3 partit : admin, formateur, élève.
    Je pense que déjà il peut être subdivisé en 3 partit mais bon je vois mal comment faire cela et puis aussi au besoin factorisé le code avec des services mais j'ai surtout vue des avertissement sur le faite de ne pas trop les utilisé

    Donc pour résumé :

    Quelles sont les bonnes pratiques pour faire un "bon controlleur"?

    comment créer mais surtout mettre en place des services qui serai juste des fonctions utiliser entre les différents controlleur?

    Et au besoin faire des actions différentes en fonction de l'appellant (admin eleve ou formateur)

    Merci a vous ^^

  2. #2
    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
    Hello,

    Si je comprends bien l'intégralité du code de ton projet se trouve dans un seul contrôleur. Et effectivement c'est pas optimal.

    Je te suggère pour ce qui est des bonnes pratiques de jeter un oeil à cette partie de la doc : http://symfony.com/doc/current/best_...ces/index.html et plus particulièrement pour le contrôleur cette page là http://symfony.com/doc/current/best_...ntrollers.html

    Ensuite pour ce qui est des services => http://symfony.com/doc/current/book/...container.html cette partie explique ce qu'est un service et comment les utiliser.

    Enfin, pour parvenir à déceler quelles sont les parties responsables des lenteurs tu peux commencer par te tourner vers le profiler symfony (rubrique Timeline) qui te donnera les premiers indices sur les parties à optimiser (une fois que tu auras séparé tes parties de code dans des services différents).

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2013
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2013
    Messages : 739
    Points : 1 022
    Points
    1 022
    Par défaut
    merci Nico_F, es -ce que vs avez testez par exemple : PHPCS et PHPMD , voila la source

  4. #4
    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
    Oui pour PHP CodeSniffer et non pour le MessDetector.

    Dans les deux cas ça ne correspond pas au besoin : quand on est face à un contrôleur de 10K+ lignes il n'y a pas besoin du moindre outil pour détecter ou se trouve le "mess", et je pense qu'on doit être à des années lumières de se soucier de coding rules sur l'écriture du code, le but étant de refaire une architecture potable.

    Je serais même tenté de dire "recommence" car démêler ce gros n'importe quoi prendra sans doute plus de temps que de le refaire proprement en repartant d'une base vierge.

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2014
    Messages : 35
    Points : 61
    Points
    61
    Par défaut
    Déjà merci a vous d'avoir répondu assez vite j'ai eu pas mal de petite galère pour pouvoir utilisé PHPMD (je suis preneur même si comme Nico l'as dit la n'es pas le problème ) au cas ou résultat 341 problème 67 static access et les restes de Else (il n'aime pas les else)

    Je pense que vais clore le topic comme il a été dit je vais devoir tout reprendre à zéro ( ou presque quand même) je pense que je vais sans pouvoir résoudre des "problèmes" sans même me rendre compte (bon aussi au créer mais bon)

  6. #6
    Expert éminent
    Avatar de pmithrandir
    Homme Profil pro
    Responsable d'équipe développement
    Inscrit en
    Mai 2004
    Messages
    2 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Responsable d'équipe développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 418
    Points : 7 295
    Points
    7 295
    Par défaut
    Avoir un controlleur long ne devrait pas etre le plus gros probleme... si tes mnethodes sont courtes et bien codees...

    Combien de temps prennent tes requetes SQL ?
    C est souvent le probleme.

    Pierre

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2014
    Messages : 35
    Points : 61
    Points
    61
    Par défaut
    Bon dans l'ensemble après quelque analyses j'ai réussit a amélioré le résultat du coté de Symfony dans le Timeline
    Total time 648 ms
    Initialization time 135 ms
    Je pense que maintenant le problème a été résolue du coté Symfony. (jai séparé et surtout trouvé a des endroits des requêtes SQL chargé inutilement suite a des changement sur le site ^^)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Comment améliorer la vitesse de chargement d'un formulaire
    Par Filou07 dans le forum IHM
    Réponses: 9
    Dernier message: 10/04/2015, 09h17
  2. Chrome 27 améliore la vitesse de chargement des pages
    Par Hinault Romaric dans le forum Google Chrome
    Réponses: 3
    Dernier message: 22/05/2013, 16h07
  3. Améliorer vitesse de chargement d'une MasterPage
    Par amamildor dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 29/11/2009, 17h47
  4. Améliorer la vitesse de chargement des images
    Par danielhagnoul dans le forum jQuery
    Réponses: 2
    Dernier message: 05/03/2009, 09h07
  5. Vitesse de chargement d'une image jpg ?
    Par ybruant dans le forum Langage
    Réponses: 6
    Dernier message: 16/11/2004, 20h42

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