发布与订阅

传统意义上,基于HTTP协议的网页应用,客户端与服务端在一种“请求-响应”的方式中通讯。通常客户端向服务端发起REST化的HTTP请求,在响应时接收HTML或者JSON数据,而且当后端数据发生变化时服务器并没有办法即时地推送数据到客户端。

Meteor建立在分布式数据协议(DDP)基础上,其允许数据进行双向传输。建立一个Meteor应用并不要求你设置REST端点来序列化及发送数据。相反你创建发布(Publication)端点可以将数据从服务端推送至客户端。

在Meteor中,发布(Publication)是一个指定的服务端API接口,用来构建一组发送至客户端的数据。客户端发起一个连接至发布的订阅(Subscription),接收那些数据。这数据包含订阅加载时第一批发送的数据以及当数据变更时的增量数据更新。

因此,订阅可以被认为是一组随着时间推移而变化的数据。通常,这样做的结果是在服务端的MongoDB集合与该集合在客户端的Minimongo缓存之间使用订阅构建桥接。你可以认为订阅是一个管道,用来连接基于客户端版本的“真实”集合的子集,且不间断的保持它更新服务端最新的信息。

results matching ""

    No results matching ""