🎶 SYMFONY & LE CACHE : ON ACCELERE 🚀

Поділитися
Вставка
  • Опубліковано 19 вер 2024

КОМЕНТАРІ • 78

  • @coton8413
    @coton8413 5 років тому +5

    Merci Lior.
    Content de voir que tu te mets à faire un format de vidéo plus "court" des petits sujets comme celui-ci !

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      Merci à toi de me suivre !

  • @nos30ans
    @nos30ans 5 років тому +1

    Salut Lior ! Merci infiniment pour toutes tes vidéos que je suis assidûment. Un petit cours sur la préparation de la mise en ligne en production d'une application symfony ça serait possible ? Ou un cours sur l'utilisation du composant symfony Http Client ? Merci encore pour ton travail et ta bonne humeur, ça fait bien plaisir !

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      Pour la mise en prod d'une application Symfony tu as un bon tuto chez Grafikart (cherche "grafikart hébergement symfony") ou à la fin de mes deux formations, on met toujours en ligne :)

    • @nos30ans
      @nos30ans 5 років тому

      @@LiorCHAMLA Merci bien Lior !! Et continue à nous régaler :-)

  • @miraouiabderrahim695
    @miraouiabderrahim695 4 роки тому

    Grand Merci @Lior pour les tutos.
    J'attends avec impatience la nouvelle série de symfony, exactement j'attend une vidéo sur l'intégration admin template dans un projet symfony
    une autre fois Grand merci :)

  • @marinemathurin3634
    @marinemathurin3634 5 років тому +1

    Toujours des explications au top ! Merci encore !

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      Merci beaucoup ! Faut partager

  • @Pierstoval
    @Pierstoval 5 років тому +1

    Omg, comparer le cache avec un frigo, c'était très audacieux ! Mais c'est une super présentation :)

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому +1

      Attend, c'était un commentaire positif ou je vois flou là ?! :D

    • @Pierstoval
      @Pierstoval 5 років тому

      @@LiorCHAMLA C'est bon, je ne suis pas "si" méchant que ça quand même ? :p

  • @gregoirebourdin8285
    @gregoirebourdin8285 4 роки тому

    Merci pour ce tutoriel très simple et très instructif, mais j'aimerais savoir quel sont les tutoriels permettant d'avoir un cache qui se met à jour comme tu le dis à 18:10 min, parce qu'après avoir fouillé un peu partout j'ai pas trouvé grand chose de très concluant mis à part le HTTP Etag et sa methode LastModified() que je ne vois pas comment appliquer avec ton tutoriel. Pour toi, quelle serai la solution la plus appropriée ?

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому

      Bah imaginons tu mets à jour un article. Tu le trouves dans le cache et tu l'invalides ou carrément tu le remet en cache :)

  • @yanndeo9501
    @yanndeo9501 5 років тому

    Bonjour Lior .
    A quoi ça sert d'avoir un cache en base de donnée ?. du point de vu performance çà donne quoi ?. Merci encore pour tes vidéos et ta bonne humeur

  • @jony_b
    @jony_b 3 роки тому

    Merci Lior pour cette vidéo instructive. Toujours au top ;)
    Je me demandais comment tu arrivais à n'avoir que les 2 méthodes de l'objet $cache à savoir get() et delete() ? Il me semblait que php intelephense faisait le travail mais de mon côté j'ai toutes les fonctions de php à la place qui s'affichent...

    • @LiorCHAMLA
      @LiorCHAMLA  3 роки тому

      Dans les options de VSCode (CTRL + virgule), tu cherches "suggest basic" et tu désactives l'option "PHP Suggest Basic" ;)

    • @jony_b
      @jony_b 3 роки тому

      @@LiorCHAMLA Merci beaucoup Lior ;)

  • @luvima671
    @luvima671 5 років тому +1

    Bonne vidéo comme d'hab' !
    Mais du coup quand on travaille beaucoup avec la BDD, mieux vaut ne pas utiliser le cache pour afficher une liste d'enregistrement ( qui met pas mal de temps ) puisque l'utilisateur peut ajouter/modifier/supprimer, enfin faire des changements dans la BDD à ce niveau. Donc le cache serait pas utile dans ce cas non ?
    Et sinon tu redeviens actif sur ta chaîne ! J'espère que ça va continuer 😁

    • @TheDougeman
      @TheDougeman 5 років тому

      Tu peux invalider le cache lorsqu’il y a des modifications.

    • @luvima671
      @luvima671 5 років тому

      @@TheDougeman Ouais mais du coup pour voir si il y a des modifications il faut bien lancer la fonction et comparer les résultats non ?

    • @TheDougeman
      @TheDougeman 5 років тому

      Non si tu invalides le cache, lorsqu’une personne va essayer d’obtenir la liste ça va faire à nouveau 2 secondes avec la nouvelle liste mise à jour et ainsi de suite pour chaque mise à jour.

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      @@TheDougeman On pourrait imaginer qu'on mette la liste en cache quand on l'affiche et qu'on la garde telle quelle dans le cache avec le nom "liste-enregistrements", et au moment où l'admin (ou un utilisateur) créé ou modifie ou supprime un enregistrement, on peut invalider l'item qui porte le nom "liste-enregistrements" dans le cache :)

    • @luvima671
      @luvima671 5 років тому

      @@LiorCHAMLA Aaah ouais je vois ! Donc ça signifie que dans tous les contrôleurs ( et fonctions de service ) qui touchent à la BDD je dois m'occuper d'invalider le cache ? 😅

  • @ibanson
    @ibanson 3 роки тому

    Super bien expliqué ! Merci pour le partage =)

  • @choco-code
    @choco-code 5 років тому

    Lior, une vidéo dans laquelle on fait des appel API-REST déjà fonctionel avec symfony. Par exemple en node avec la fetch methode qui permet de faire un appel API-REST
    .Merci

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      J'ai une formation entière de 15 heures sur ce sujet sur ma plateforme learn.web-develop.me ! :)

  • @webdev723
    @webdev723 4 роки тому

    Super M. Lior Chamla, tu m'aide beaucoup

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому +1

      Tant mieux c'est fait pour ça !

  • @ko-jiro5971
    @ko-jiro5971 5 років тому

    Merci Mr LIOR !! Encore une fois vous nous gâter !! Petite question ( ou petit spoil ) , vous nous préparez un prochain cours ?? Je demande ça, je demande rien :)
    Au passage, la présentation de vos vidéos sont top !

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      Y'a un cours très "petit" qui va sortir sur ma plateforme et qui concerne les principes SOLID. Merci pour ton commentaire en tout cas :)

  • @ziat1988
    @ziat1988 2 роки тому

    Salut Lior. Les données de caches de Symfony sont stocké où? C'est différent par rapport à Redis ? Merçi

    • @LiorCHAMLA
      @LiorCHAMLA  2 роки тому

      Par défaut c'est dans un fichier mais tu peux configurer pour que ça stock sur Redis ou dans d'autre systèmes de stockage :

  • @adamkenton2585
    @adamkenton2585 5 років тому +1

    Pense tu faire des tutos sur Golang ? Vu que ton site est visiblement codé en Go.

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому +1

      Je n'ai jamais tapé une seule ligne de Go :)

  • @rafiousitou
    @rafiousitou 5 років тому

    Bonjour Bro.
    Merci pour cette superbe nouvelle vidéo. 👏👏👏❤

  • @devcrown
    @devcrown 5 років тому +1

    Super merci beaucoup pour tes vidéos ! Ça marche aussi avec le repository ?

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      Je ne comprend pas bien la question ? Tu veux mettre le résultat d'un "findAll" dans le cache ? Tu peux mettre CE QUE TU VEUX dans le cache :)

    • @Pierstoval
      @Pierstoval 5 років тому +1

      Pour info, Doctrine a ses propres outils pour le cache, donc n'utilisez pas le "cache.app" avec Doctrine, utilisez plutôt les fonctionnalités de "Result Cache" de Doctrine. RTFM :D

    • @fredericmalard8236
      @fredericmalard8236 4 роки тому

      ​@@LiorCHAMLA Merci pour la vidéo ! J'ai la même question, je comprend pas comment faire avec un repository (ou tout autre paramètre). J'ai toujours un "undefined variable repository" lorsque j'essaie de l'appeler dans la fonction invoquée par l'objet $cache. J'ai essayé d'ajouter le repository (ainsi qu'un serializer) aux paramètres après $item, mais j'ai une erreur qui me dit que je n'ai renseigné qu'un paramètre sur 3 lors de l'appel de la fonction ("j'ai renseigné" l'item par injection de dépendances mais pas le repo ni le serializer). J'ai réussi à passer le repository et le serializer en paramètre comme suit, mais cette fois ci, c'est l'item, que symfony me réclame :
      $usersJson = $cache->get(
      "usersJsonCache",
      (function ($repo, $serializer, ItemInterface $item){
      $item->expiresAfter(10);
      $usersEntity = $repo->findByCustomer($this->getUser());
      ... // (plein de calculs)
      return $usersJson;
      })($repo, $serializer) // passage du repo et du serializer en paramètre, mais pas possible de passer l'item puisque renseigné par injection de dépendance
      );
      J'ai l'impression que l'injection de dépendances ne se fait que si je ne renseigne aucun paramètre manuellement. J'ai essayé de récupérer l'item en amont et de le passer en paramètre aussi, mais j'ai une autre erreur relative a l'item lui même donc je suppose que c'est pas la solution
      Une idée de la solution SVP ?

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому +1

      @@fredericmalard8236 Bah oui, ça vient de ta méconnaissance de comment marchent les fonctions anonymes :D
      La fonction que tu créés ne peut recevoir qu'un seul paramètre : l'ItemInterface $item. Par contre, tu peux faire ça :
      $usersJson = $cache->get('usersJsonCache', function(ItemInterface $item) use ($repo, $serializer) {
      ....
      });

    • @fredericmalard8236
      @fredericmalard8236 4 роки тому

      @@LiorCHAMLA ah d'accord super :D
      Merci beaucoup !

  • @brunodogbase9416
    @brunodogbase9416 5 років тому

    Salut Lior, c'est peut-être pas le bon endroit pour poster ça mais j'ai un soucis avec l'upload de fichier. J'ai un message du genre " the file is too large. allowed maximum size is 2 mib " . J'ai fait des recherches, on dit que ça vient du php.ini mais aucun changement quand j'ai modifié ce fichier. Merci !

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому +1

      Il est possible que tu modifies le mauvais php.ini.
      Essaye de taper ça dans ta console (si tu es sous Windows) : php -i|find/i"configuration file"
      Et il va te dire où est ton vrai php.ini

    • @brunodogbase9416
      @brunodogbase9416 4 роки тому

      @@LiorCHAMLA Thank you so much Lior. Tu es le meilleur, ça marche 😁

  • @martinbafoli470
    @martinbafoli470 5 років тому

    Merci encore bro pour tes vidéos enrichissantes. est-il possible de nous faire une vidéo sur les voters ?
    Merci d'avance.

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому +1

      Pourquoi pas, ça pourrait être intéressant :)

  • @bambasita6958
    @bambasita6958 4 роки тому

    Salut; j'aimerais savoir comment déployer son application symfony. j'ai déjà mis mon projet sur le serveur , ainsi que ma base de données, mais je rencontre des problèmes

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому +1

      Regarde cette belle vidéo de Grafikart sur le sujet : ua-cam.com/video/AAap9qRHgIk/v-deo.html

  • @remialbanperso
    @remialbanperso 4 роки тому

    Merci beaucoup pour tes tutoriels !!!!
    Je sais pas si c'est en rapport avec l'accélération des pages mais si on va sur le site de grafikart, la page ne s'actualise pas mais change d'url et le temps de chargement est rapide. Comment cela est-il possible ?

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому

      Il utilise Turbolinks :)

    • @remialbanperso
      @remialbanperso 4 роки тому

      @@LiorCHAMLA merci beaucoup Lior ! Continu comme ça !

  • @disneldel
    @disneldel 5 років тому

    Merci beaucoup chef pour cette vidéo.

    • @LiorCHAMLA
      @LiorCHAMLA  5 років тому

      De rien, n'hésites pas à partager ! Merci à toi pour ton visionnage ;)

  • @geoffreyl2867
    @geoffreyl2867 4 роки тому

    Simple et efficace 😍

  • @tambakolani5150
    @tambakolani5150 5 років тому

    Thanks you Lior

  • @amzobeau
    @amzobeau 3 роки тому

    Je m'abonne

  • @mentalresistance174
    @mentalresistance174 4 роки тому

    Merci :)
    Je sais pas si tu connais sylius qui fonctionne avec symfony ?

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому +1

      J'ai regardé genre 1h :D

    • @mentalresistance174
      @mentalresistance174 4 роки тому

      @@LiorCHAMLA tu en penses quoi ?

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому

      @@mentalresistance174 absolument rien j'ai pas du tout étudié le truc

    • @mentalresistance174
      @mentalresistance174 4 роки тому

      @@LiorCHAMLA ok 😂, de toutes façons je continue à te suivre je verrai bien si tu aborde le sujet un jour 😉.
      Merci et bonne continuation.

  • @hammamihassine4
    @hammamihassine4 4 роки тому

    bravo

  • @naspy971
    @naspy971 4 роки тому

    Hello, si je peux me permettre, c'est quand même dommage que le nom de ta plateforme ne soit pas intuitif, pour s'en rappeler c'est compliqué

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому

      Merci pour le retour, je vais y réfléchir

  • @lakoudrania1661
    @lakoudrania1661 4 роки тому

    Svp les classe en c++😞

    • @LiorCHAMLA
      @LiorCHAMLA  4 роки тому

      J'ai pas fait de C++ depuis ma deuxième année en cours y a 10 ans :D

    • @fredericmalard8236
      @fredericmalard8236 4 роки тому

      @Duo Kal si ça t'intéresse, t'as plein de cours, comme le cours de mathieu nebra sur openclassrooms gratuit mais textuel, ou des cours de C++ sur udemy, vidéo mais payants

  • @zellmat1
    @zellmat1 3 роки тому

    Si toi aussi tu veux indeter son putin de crochet ligne 16.... :'D

  • @choco-code
    @choco-code 5 років тому +1

    Si toi aussi tu es là, laisse un pouce bleu