Tutoriel NodeJS/Golang/PHP : La concurrence sur PHP / NodeJS / Golang / Erlang

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

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

  • @jeanluc5627
    @jeanluc5627 7 ปีที่แล้ว +9

    J'adore ce type de vidéos, pour gérer les performances d'un serveur web 😌

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

    merci nous avons besoin de vous dans nos technique de développement

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

    Comme toujours, merci à toi. Un vrai modèle pour ce corps de métier

  • @mikavoid
    @mikavoid 7 ปีที่แล้ว +5

    Merci énormément! Je trouve ce type de vidéo super intéressant ! Personnellement je galère beaucoup à cause de ces questions, j'ai jamais travaillé sur des applications sur lesquelles j'ai vraiment eu besoin de réfléchir en terme de performance et de scalabilité. Merci et j'espère qu'il y aura d'autres vidéos comme celle là bientôt !

    • @grafikart
      @grafikart  7 ปีที่แล้ว +9

      Peut être des vidéos sur la création d'un bot discord fera intervenir ce genre de notion (ou une vidéo elixir je ne sais pas encore ;))

    • @adamkenton2585
      @adamkenton2585 7 ปีที่แล้ว

      Ca serait bien oui

  • @BeRoots74
    @BeRoots74 7 ปีที่แล้ว

    Très bonne présentation. Certains on apporté les réponses concernant Python et les difficulter présenté pour Node.js (aujourd'hui résolu). Personnellement je suis encore un peu jeune sous java pour vraiment oser prendre parole, mais perso j'utilise un framework (executor) pour faire du multithread et j'aimerai bien savoir ce qu'il en retourne donc pour Java.
    Espérons un retour d'information ici...
    Encore merci à tous.

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

    En Java, dans le cas d'un serveur HTTP "traditionnel" qui gère la spécification servlet tu as 1 thread qui gère 1 requête (le tout est optimisé via un pool de thread). Le concept d'event loop s'est aussi intégré à Java avec les frameworks Vert.x ou bien Spring Webflux (avec Netty comme container au lieu d' Apache Tomcat pour les applications Spring WebMvc traditionnels)

  • @28bits20
    @28bits20 6 ปีที่แล้ว +8

    Ce serait génial si vous pouviez faire un tuto de golang :)

  • @sofos01
    @sofos01 7 ปีที่แล้ว

    pour le PHP: si vous utilise les serveur Web Apache , il existe plusieurs mode de concurrence "MPM" : prefork (mode classic) , worker ( commen nginx) , event (comme nodejs) , ces modes on des influences sur la performance de notre serveur

  • @jauressah1082
    @jauressah1082 6 ปีที่แล้ว

    Merci pour cette vidéo très instructive.

  •  7 ปีที่แล้ว

    T'as bien raison de parler de la complexité de l'asynchrone de node.js, mais je pense que le mécanisme de Promise a bien résolu ce problème. On a (enfin) un mot du langage qui permet de montrer qu'une tache bloquante vient d’être lancé et d'y joindre le code asynchrone à exécuter lorsqu'on aura le résultat.
    Ca reviendrait à dire que les lambdas manquent à java 1.7 en ne prenant pas en compte que java 1.8 l'intègre. Ce n'est qu'un exemple mais les langages évoluent et, même si on manipule le même concept derrière, la lisibilité s'est grandement améliorée

  • @aziz0x00
    @aziz0x00 6 ปีที่แล้ว

    Mash'allah SUPER INTERESENT!! merci jonathan! merci!

  • @jeremux
    @jeremux 7 ปีที่แล้ว

    Merci pour cette analyse !

  • @rickert78
    @rickert78 7 ปีที่แล้ว

    Merci pour cette nouvelle vidéo. Pour ma par je serai assez curieux de voir une comparaison de ces techno avec les 2 langages les plus utilisées encore C/C++ et JAVA :D

  • @aomo5293
    @aomo5293 7 ปีที่แล้ว

    Merci à vous, Je vous souhaite bonne continuation ! merci à vous

  • @TheBonjourparis
    @TheBonjourparis 7 ปีที่แล้ว +1

    trés intéressant merci est-il possible d'avoir plus de vidéos du même type ? fontionnement de la boucle d'événements JS, différences entre goroutines et thread... merci d'avance

  • @kevinwamba
    @kevinwamba 7 ปีที่แล้ว

    très bon concept de vidéo

  • @dzgoodgood9206
    @dzgoodgood9206 7 ปีที่แล้ว

    Très instructif, merci :)

  • @MohamedIfadir
    @MohamedIfadir 7 ปีที่แล้ว

    Go Erlang sont basé sur du CSP de tony hoare, go c'est par channel qui est définie sur un type, erlang c'est par Pid et mailbox du process, erlang tu doint faire ton propre loop et wait sur les message non blockante, en nodejs l'event loop et déja définie avec la libuv, mais erlang est purement fonctionelle

  • @medbeji5428
    @medbeji5428 7 ปีที่แล้ว +1

    Merci pour cette analyse ! par contre c'est quoi l'outil que vous utilisez pour faire le Benchmark "hey -c 100 -n 100 url etc.." ?

    • @guillaume1864
      @guillaume1864 6 ปีที่แล้ว

      +1, je me pose la même question

    • @ScrubsFrance
      @ScrubsFrance 6 ปีที่แล้ว

      En vrai c'est Apache Benchmark ;)

  • @dam_0166
    @dam_0166 7 ปีที่แล้ว +1

    tu pourrais me dire ce que tu utilise sur ton linux (barre de tache et environnement graphique ...)

    • @grafikart
      @grafikart  7 ปีที่แล้ว +1

      Yep j'ai détaillé un peu ma configuration ici : www.grafikart.fr/blog/mon-environnement

    • @dam_0166
      @dam_0166 7 ปีที่แล้ว

      merci beaucoup

  • @zgmrvn
    @zgmrvn 7 ปีที่แล้ว

    IntelliJ permet-il de faire tout ça de base (terminal, ssh) ou faut-il lui adjoindre une ribambelle de plugins ?

    • @grafikart
      @grafikart  7 ปีที่แล้ว +2

      Je n'utilise pas IntelliJ dans cette vidéo mais directement mon terminal (terminator)

    • @zgmrvn
      @zgmrvn 7 ปีที่แล้ว

      ah ok -_-', connaissais pas

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

    Quel est le thème de vim qui est utilisé ?

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

    Php n’a pas de serveur intégré ?

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

      Le serveur intégré de PHP est réservé pour le développement

  • @henochangemichaellonzokoff6036
    @henochangemichaellonzokoff6036 ปีที่แล้ว

    Cc grafikart on a besoin de ce test en 2023

    • @grafikart
      @grafikart  ปีที่แล้ว

      Rien n'a changé dans le fonctionnement des technologies présentées depuis

  • @jeanclaudescandale
    @jeanclaudescandale 7 ปีที่แล้ว

    et donc du coup pas d'info sur Erlang ...

  • @Pierstoval
    @Pierstoval 7 ปีที่แล้ว

    J'aime beaucoup cette vidéo, et ça m'a conduit à changer ma stack apache+mod_php par apache + php-fpm :)
    Par contre, tu dis "ça va-t-être" à chaque paragraphe, ça pique les oreilles. On dit "ça va être", il n'y a pas de liaison entre les deux. Désolé, grammar nazi inside.. :D

  • @neolectron
    @neolectron 7 ปีที่แล้ว

    php a un serveur web de dev integré :/

    • @grafikart
      @grafikart  7 ปีที่แล้ว +5

      Ce serveur n'est absolument pas conçu pour de la production

  • @Mezklador
    @Mezklador 7 ปีที่แล้ว +7

    Euh... Désolé de chipoter mais la traduction de "pool" par "piscine" - ce qui est très mignon par ailleurs - est incorrecte : sachant que PHP-FPM gèrent des "workers", les "pools" sont en fait des "regroupements" - au sens "équipe"... Parce que franchement, "piscine", dans ce contexte, ça n'a pas vraiment de sens (à part pour les remouds ?)

    • @Mezklador
      @Mezklador 7 ปีที่แล้ว +1

      Certes le premier résultat dans Google Trad, c'est "piscine" mais c'est pas la bonne occurrence...

    • @Mezklador
      @Mezklador 7 ปีที่แล้ว

      Sinon, chaud patate ici pour une découverte simultanée avec GoLang, que je trouve hyper fascinant. Elixir aussi a bien des charmes qui méritent qu'on s'y intéressent...

    • @fablouping5292
      @fablouping5292 7 ปีที่แล้ว

      www.wordreference.com/enfr/pool
      pool n (group: workers, applicants, etc.) (groupe de travailleurs, anglicisme) pool nm
      groupe nm
      équipe nf
      There is a large pool of applicants for this job. Sarah was a member of the typing pool.
      Sarah faisait partie du pool des dactylographes.

    • @Mezklador
      @Mezklador 7 ปีที่แล้ว

      Fabien Plart c'est ça. mais faut bien trouver un terme en français plutôt que lâcher un vulgaire anglicisme, non ?

    • @grafikart
      @grafikart  7 ปีที่แล้ว +3

      Yep dans le futur j'utiliserais groupe ça traduit bien le concept ^^

  • @neolectron
    @neolectron 7 ปีที่แล้ว

    les tests sont biaisés car le CPU monte a 100%. donc t'es capé en ressources peut importe le coté sync/async du language. faudrait refaire la meme chose avec un cpu plus grand. ou des tests moins lourds. car là c'est le hardware qui limite le test.

    • @grafikart
      @grafikart  7 ปีที่แล้ว

      C'est voulu, le but est de comparer le bénéfice obtenu lors de l'I/O ou le processeur peut effectivement faire des choses en attendant et le cas ou le code est intensif niveau CPU.