Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Realtime with NodeJS - Hornet (French)

Realtime with NodeJS - Hornet (French)

French presentation I gave for local Ruby user group in septembre 2011. I spoke about how NodeJS can help dev to extend an existing application with realtime features. Speak was about 20 minutes long followed by a live coding session.

Fd6c3e14f1aafe3ce6e9084291096df6?s=128

Robin Komiwes

April 06, 2012
Tweet

Transcript

  1. temps réel du pour vos applications Web NodeJS + Redis

    (+ démo avec Ruby on Rails) vendredi 30 septembre 11
  2. Robin Komiwes nectup nectify FRESC vendredi 30 septembre 11

  3. 15’ vendredi 30 septembre 11

  4. 15’ C’est court. 13’ vendredi 30 septembre 11

  5. 1 façon simple d’ajouter du temps réel à vos applications

    web vendredi 30 septembre 11
  6. Qu’est ce que j’entends par temps réel? • Pouvoir pousser

    des informations à un ensemble de clients le plus instantanément possible • Une expérience utilisateur plus riche vendredi 30 septembre 11
  7. Qu’est ce que j’entends par temps réel? • Pouvoir pousser

    des informations à un ensemble de clients le plus instantanément possible • Une expérience utilisateur plus riche timelines, chats, notifications, évènements, tracé de graphiques temps réel etc. vendredi 30 septembre 11
  8. Pourquoi le temps réel web déconnait? nos langages favoris =

    threads = consommation mémoire vendredi 30 septembre 11
  9. Pourquoi le temps réel web déconnait? nos langages favoris =

    threads = consommation mémoire *Google : C10K PROBLÈME* vendredi 30 septembre 11
  10. Pourquoi aujourd’hui ça peut marcher? langages asynchrones = - de

    threads = - de consommation mémoire vendredi 30 septembre 11
  11. Pourquoi aujourd’hui ça peut marcher? langages asynchrones = - de

    threads = - de consommation mémoire SOLUTION vendredi 30 septembre 11
  12. Application classique Rails Client Base de données vendredi 30 septembre

    11
  13. Application classique Rails Client Base de données NodeJS Couche temps

    réel Redis *socket.io vendredi 30 septembre 11
  14. Application classique Rails Client Base de données NodeJS Couche temps

    réel Redis *socket.io BUS DE MESSAGES vendredi 30 septembre 11
  15. NoSQL : réponse aux limites des moteurs SQL classiques, la

    charge. PUB(lish)/SUB(scribe) : publication de messages et notifications aux abonnés Redis vendredi 30 septembre 11
  16. Rails publie sur Redis qui notifie NodeJS vendredi 30 septembre

    11
  17. NodeJS Javascript : tout le monde connait Javascript ! +

    Couche I/O asynchrone vendredi 30 septembre 11
  18. NodeJS Javascript : tout le monde connait Javascript ! +

    Couche I/O asynchrone + Google V8 : ça va très vite = Javascript coté serveur hautes performances ( + beaucoup de fun ! ) vendredi 30 septembre 11
  19. + Socket.io • Librairie NodeJS • Négocie le transport (Websocket,

    long polling...) • Propose une interface indépendante • Enormément de followers Github + Hornet (par nectify!) • Surcouche Socket.io • Propose des connecteurs pour les applications existantes • Ajoute de la sécurité. *sic!* vendredi 30 septembre 11
  20. NodeJS (via Socket.io (via Hornet)) envoie des messages en temps

    réel aux clients connectés et concernés vendredi 30 septembre 11
  21. SHOW TIME vendredi 30 septembre 11

  22. Vous étendez votre architecture existante Résumé vendredi 30 septembre 11

  23. Résumé La communication temps réelle est à sens unique. Ce

    qui est bien. vendredi 30 septembre 11
  24. La solution peut monter en charge facilement. Résumé vendredi 30

    septembre 11
  25. Robin Komiwes twitter : @robinkomiwes github : robink email :

    robin.komiwes@gmail.com vendredi 30 septembre 11