meteor ddp

26
Meteor/DDP 김경

Upload: allting-kim

Post on 10-May-2015

431 views

Category:

Technology


14 download

TRANSCRIPT

Page 1: Meteor ddp

Meteor/DDP

김경렬

Page 2: Meteor ddp
Page 3: Meteor ddp

Why the Future is not RESTful

http://z.caudate.me/why-the-future-is-not-restful/

Page 4: Meteor ddp

• Open source platform for building Modern Web Apps.

• EJSON instead of HTML

• Run most of their code inside the browser.

• Single language.

• Reactivity, Pub/Sub, Latency Compensation

http://www.meteor.com/screencast

Page 5: Meteor ddp

javascript code (client/server)

node.js / database (mongodb)

DDP(EJSON)

presentations(templates, binding)

Page 6: Meteor ddp

install

• $ curl https://install.meteor.com | /bin/sh

• $ meteor create myapp

• $ cd myapp$ meteor=> Meteor server running on: http://localhost:3000/

• $ meteor deploy myapp.meteor.com

Page 7: Meteor ddp

Document

• http://docs.meteor.com/ (english)http://docs-ko.meteor.com/ (번역)

Page 8: Meteor ddp

Sample - LeaderBoard

Page 9: Meteor ddp
Page 10: Meteor ddp
Page 11: Meteor ddp

DDP (Distributed Data Protocol)

• Remote procedure calls by the client to the server.

• The client subscribing to a set of documents, and the server keeping the client informed about the contents of those documents as they change over time.

https://github.com/meteor/meteor/blob/master/packages/livedata/DDP.md

Page 12: Meteor ddp

SockJS / WebSocketsNative Socket

EJSON (msg type, other field)

EstablishingManaging Data

Remote Procedure Calls

Page 13: Meteor ddp

Establishing

client server

connect

sessionversionsupport

Page 14: Meteor ddp
Page 15: Meteor ddp

Establishing

client server

connected

session

Page 16: Meteor ddp

Establishing

client server

failed

version

Page 17: Meteor ddp

Managing Data

client server

sub unsub

id(name

params)

Page 18: Meteor ddp
Page 19: Meteor ddp

C(R)UD

client server

addedchanged removedcollection

id (fields, cleared)

Page 20: Meteor ddp

Ordered Collection C(R)UD

client server

addedBeforemovedBefore

collection id

fields, before

Page 21: Meteor ddp

RPC

client server

method

methodparams

id

Page 22: Meteor ddp
Page 23: Meteor ddp

RPC

client server

result

id error result

Page 24: Meteor ddp

RPC

client server

update

methods

Page 25: Meteor ddp

The futures of RESTful

Data storage of the client

RealTime

Page 26: Meteor ddp