🎶 SYMFONY & LE CACHE : ON ACCELERE 🚀

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 ธ.ค. 2024

ความคิดเห็น • 78

  • @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 :)

  • @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 !

  • @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 ;)

  • @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 5 ปีที่แล้ว

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

  • @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 !

  • @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

  • @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 :-)

  • @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 !

  • @bambasita6958
    @bambasita6958 5 ปีที่แล้ว

    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  5 ปีที่แล้ว +1

      Regarde cette belle vidéo de Grafikart sur le sujet : th-cam.com/video/AAap9qRHgIk/w-d-xo.html

  • @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 :)

  • @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 ! :)

  • @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

  • @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 :

  • @miraouiabderrahim695
    @miraouiabderrahim695 5 ปีที่แล้ว

    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 :)

    • @LiorCHAMLA
      @LiorCHAMLA  5 ปีที่แล้ว +1

      De rien merci à toi :)

  • @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.

  • @marinemathurin3634
    @marinemathurin3634 5 ปีที่แล้ว +1

    Toujours des explications au top ! Merci encore !

    • @LiorCHAMLA
      @LiorCHAMLA  5 ปีที่แล้ว

      Merci beaucoup ! Faut partager

  • @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 =)

    • @LiorCHAMLA
      @LiorCHAMLA  3 ปีที่แล้ว

      De rien merci à toi :)

  • @webdev723
    @webdev723 4 ปีที่แล้ว

    Super M. Lior Chamla, tu m'aide beaucoup

    • @LiorCHAMLA
      @LiorCHAMLA  4 ปีที่แล้ว +1

      Tant mieux c'est fait pour ça !

  • @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 :)

  • @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 :)

  • @geoffreyl2867
    @geoffreyl2867 4 ปีที่แล้ว

    Simple et efficace 😍

  • @rafiousitou
    @rafiousitou 5 ปีที่แล้ว

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

    • @LiorCHAMLA
      @LiorCHAMLA  5 ปีที่แล้ว +1

      Merci à toi bro !

  • @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 ;)

  • @lakoudrania1661
    @lakoudrania1661 5 ปีที่แล้ว

    Svp les classe en c++😞

    • @LiorCHAMLA
      @LiorCHAMLA  5 ปีที่แล้ว

      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

  • @tambakolani5150
    @tambakolani5150 5 ปีที่แล้ว

    Thanks you Lior

    • @LiorCHAMLA
      @LiorCHAMLA  5 ปีที่แล้ว

      De rien merci à toi :)

  • @amzobeau
    @amzobeau 3 ปีที่แล้ว

    Je m'abonne

  • @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

  • @zellmat1
    @zellmat1 3 ปีที่แล้ว

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

  • @hammamihassine4
    @hammamihassine4 5 ปีที่แล้ว

    bravo

    • @LiorCHAMLA
      @LiorCHAMLA  4 ปีที่แล้ว

      Merci beaucoup :)

  • @choco-code
    @choco-code 5 ปีที่แล้ว +1

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