Julien CORIOLAND
Infinite Square
Stéphane GOUDEAU
Microsoft France
SPONSORS MICROSOFT AZURE CAMP
Interactions en « temps réel » : Pourquoi
faire ?
• Tableaux de bord affichant une information « Live » (ex : prix d’une
a...
Interactions « temps réel » pour le Web
• Limites du protocole HTTP
• « Half duplex » et sans état
• De multiples contourn...
Node.js + Socket.io
• node.js est un framework Open Source événementiel permettant de
développer des applications réseau e...
Browser Web
Moteur JavaScript
Code client javaScript
Framework Client :
AngularJS,
Knockout,
…
Microsoft Azure
VM, WebRole...
SignalR
• SignalR 2.x est un framework Open Source
• Communication asynchrone d'un client (javaScript + jQuery) avec un se...
Interactions « temps réel » Mobile
• Service Azure Notification Hubs fondé sur
Windows Notifications Service
• Windows / W...
Une revue des flux applicatifs …
Resources techniques
• SignalR
• www.asp.net/signalr
• http://github.com/signalr/signalr
• http://www.campusmvp.net/blog/s...
Boostez votre projet
cloud!
Remportez un Hands-
On avec nos
spécialistes Azure le
3 juillet
Inscrivez-vous sur notre stand!
© 2012 Microsoft Corporation. Tous droits réservés. Microsoft, Windows et les autres noms de produits sont des marques dép...
[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles
[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles
[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles
[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles
[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles
[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles
Prochain SlideShare
Chargement dans…5
×

[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles

2 221 vues

Publié le

[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
2 221
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
5
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

[AzureCamp 24 Juin 2014] Interactions en "temps réel" pour les applications Web et Mobiles

  1. 1. Julien CORIOLAND Infinite Square Stéphane GOUDEAU Microsoft France
  2. 2. SPONSORS MICROSOFT AZURE CAMP
  3. 3. Interactions en « temps réel » : Pourquoi faire ? • Tableaux de bord affichant une information « Live » (ex : prix d’une action • Applications collaboratives (ex: Réponse à un « chat ») • Suivi de l’avancement d’une tâche • Application métier répondant à des mises à jour multiples et simultanées • Evènement dans un jeu • Remontée d’alerte et push sur les mobiles • …
  4. 4. Interactions « temps réel » pour le Web • Limites du protocole HTTP • « Half duplex » et sans état • De multiples contournements liés aux usages du Web 2.0 • WebSockets : • Evolution du protocole (IETF) et de l’API (W2C) • Connexion persistante et bidirectionnelle • Pré-requis • Un serveur http piloté par évènement • Etre supporté par le browser et par le serveur • Implémentation via de nombreux frameworks : • Socket.io • SignalR • ... • De multiples possibilités d’hébergement sur Azure : Azure Web Site, Cloud Service PaaS, Cloud Service IaaS, Azure Mobile Service
  5. 5. Node.js + Socket.io • node.js est un framework Open Source événementiel permettant de développer des applications réseau en JavaScript • Tous les requêtes sont asynchrones et s’exécutent sur un seul thread • Utilise le moteur JavaScript V8 de Google et un wrapper C++ optimisé pour gérer les I/O • Environnement extrêmement modulaire: • « socket.io » : • Connexions WebSockets et long polling • Affinité de session requise en multi-nodes sur les scénarios long polling • « IISNode » : node.js hébergé dans IIS • Gestion des processus • Scalabilité sur des serveurs multi-cœurs • …
  6. 6. Browser Web Moteur JavaScript Code client javaScript Framework Client : AngularJS, Knockout, … Microsoft Azure VM, WebRole, Site Web, Mobile Service HTML/JSON WebSockets node.js Moteur JavaScript V8 Code serveur javaScript Modules node.js : Express, Socket.io, …
  7. 7. SignalR • SignalR 2.x est un framework Open Source • Communication asynchrone d'un client (javaScript + jQuery) avec un serveur .Net • Push d’événements serveur vers le navigateur client • Connexion WebSockets et long polling • Deux modèles de programmation • Persistent Connection • API de bas niveau : Sémantique de connexion, reconnexion & déconnection • Broadcast vers tous les clients, groupes or des clients ciblés • Hubs • Fondé sur l’API PersistentConnection • RPC client-serveur *ET* server-client • Génération automatique du proxy client (JavaScript) • Support du Cross-Origin Resource Sharing (CORS) • De multiples possibilités d’hébergement sur Windows : • ASP.NET, OWIN, Self-Host,… • Mécanismes natif de scaleout via différents backplanes
  8. 8. Interactions « temps réel » Mobile • Service Azure Notification Hubs fondé sur Windows Notifications Service • Windows / Windows Phone • iOS, Androïd… • Centralisation des notifications push pour toutes vos applications mobiles • SDK ultra simple pour envoyer des notifications Microsoft Azure APNs WNS App back-end iOS app Windows 8.x / Phone app Android app MPNS GCM Notification Hub
  9. 9. Une revue des flux applicatifs …
  10. 10. Resources techniques • SignalR • www.asp.net/signalr • http://github.com/signalr/signalr • http://www.campusmvp.net/blog/signalr-iv-hubs • Nodejs • http://www.windowsazure.com/en-us/develop/nodejs • https://github.com/WindowsAzure/azure-sdk-for-node • https://npmjs.org/package/azure • https://nodejstools.codeplex.com • Microsoft Azure Notification Hubs • http://azure.microsoft.com/en-us/documentation/services/notification-hubs/ • http://azure.microsoft.com/en-us/documentation/articles/notification-hubs-windows-store- dotnet-get-started/ • Série de blogs « IoT / Real Time » sur notre scénario de démo d’aujourd’hui (à venir) • http://blogs.infinitesquare.com/b/beedoo • http://blogs.msdn.com/b/stephgou
  11. 11. Boostez votre projet cloud! Remportez un Hands- On avec nos spécialistes Azure le 3 juillet Inscrivez-vous sur notre stand!
  12. 12. © 2012 Microsoft Corporation. Tous droits réservés. Microsoft, Windows et les autres noms de produits sont des marques déposées ou des marques commerciales de Microsoft aux États-Unis et/ou dans d'autres pays. Les informations contenues dans ce document sont fournies uniquement à titre indicatif. Elles représentent l'opinion actuelle de Microsoft Corporation sur les points cités à la date de cette présentation. Microsoft s'adapte aux conditions fluctuantes du marché et ce document ne doit pas être interprété comme un engagement de la part de Microsoft ; de plus, Microsoft ne peut pas garantir la véracité de toute information présentée après la date de la présentation. MICROSOFT EXCLUT TOUTE GARANTIE, EXPRESSE, IMPLICITE OU STATUTAIRE, EN CE QUI CONCERNE CETTE PRÉSENTATION.

×