Slide 13
Slide 13 text
Data on the Wire
[ ]
DDP
{"msg":"method",
"method": "haveFun",
"params": ["RivieraDEV"],
"id": "someId"}
{"msg":"result",
"id": "someId"
"result": true}
Rappelez-vous : on a commencé par envoyer l’information sous la forme de pages complètes.
Puis on a déplacé le rendu des vues sur le client, et on a utilisé des architectures RESTful pour interagir avec le serveur. Très bien pour des échanges directs, mais moyen pour
du temps-réel : pas de notification du serveur, beaucoup d’allers-retours.
DDP (Distributed Data Protocol) : messages en JSON sur du websocket (en réalité, tout canal de communicaiton bidirectionnel, websocket optionnel, mais meilleure
implémentation actuelle).
Permet de faire du RPC et de la synchronisation de données.
Exemple : RPC. Autres types de messages (sub, added, changed, removed…) pour des événements sur un jeu de données.
Le composant Meteor : https://www.meteor.com/ddp
Introduction avec diagrammes de séquence : https://meteorhacks.com/introduction-to-ddp
Spec : https://github.com/meteor/meteor/blob/devel/packages/ddp/DDP.md