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 :

Stratégie Symfony sur les services "lazy"


Sujet :

Symfony PHP

  1. #1
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut Stratégie Symfony sur les services "lazy"
    Bonjour,

    Pour quelle(s) raison(s) technique(s) tous les services ne sont pas déclarés en "lazy" par défaut dans Symfony ?

    Pourquoi instancier x services qui ne seront potentiellement pas utilisés ?
    Est-ce que la gestion d'un proxy est aussi "longue" / "consommatrice" qu'un service lamba ?

    Merci,
    Dorian

  2. #2
    Membre Expert 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 : 37
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2011
    Messages : 728
    Par défaut
    Bonsoir,

    L'instanciation des services se fait au cache warmup et non à chaque requête.

    Lors de la phase de développement (en mode dev) ce warmup a lieu à chaque modification dans la déclaration des classes et des services, ce qui peut effectivement réduire l'utilité dudit cache.

    Cette mise en cache des services prend plus de sens une fois en mode production ou le code n'est plus modifié.
    Il va sans dire que récupérer ces services en cache est du coup bien plus performant que les instancier à la volée à chaque requête.

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut
    Bonjour,

    La compilation du container est mise en cache, mais l'instanciation d'un service n'est réalisée que lors de sa première consommation.

    Par contre les services injectés sont instanciés automatiquement alors qu'ils pourraient être en lazy par défaut.

Discussions similaires

  1. Suggestion sur les services offertent sur un site intranet!
    Par ghyosmik dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 30/01/2006, 16h14
  2. Question sur les services windows
    Par bilb0t dans le forum Windows
    Réponses: 8
    Dernier message: 09/11/2005, 15h31

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