七种同步类型
在SyncML同步协议中定义了七种同步类型:
● 双向同步 是最常见也最具有代表性的一种同步,其他同步过程都和它有很多相似之处。双向同步总是由客户机首先发起,然后客户端和服务器互换更新信息。同步过程如下:同步初始化;客户端准备要发送的数据;客户端发送自己的更新信息;服务器接收并进行分析处理;服务器返回处理的状态信息和自己的更新信息;客户端接收更新信息并对自己的数据库进行更新;客户端把更新的状态信息发送给服务器,其中包含插入记录的ID映射信息;服务器对客户端发送的映射信息做应答;客户端收到服务器的应答后,把同步结果通知用户。
● 慢同步 是双向同步的一种。在一般的双向同步中,客户机只是把自己在上次同步过程中所做的修改发送给服务器,而在慢同步中,客户机则把自己所有的数据都发给服务器,服务器逐一比较接收到的数据和自己的数据,以确定客户端哪些数据需要更新,然后把这些更新信息发送给客户端。需要慢同步的情况一般有:设备之间第一次同步;修改日志丢失;同步双方的同步标志不匹配。由于产生慢同步的原因很多,所以客户机和服务器双方都有可能发起慢同步。
● 客户端单向同步 只由客户机向服务器发送上次同步之后自己更新的信息,而服务器不把自己的更新信息发送给客户端。
● 客户端刷新同步 属于客户端单向同步的一种。客户机把自己所有的数据都发给服务器,并刷新服务器上的数据。
● 服务器单向同步 客户机从服务器那里得到上次同步之后服务器所有的更新信息,但不向服务器发送自己的更新信息。
● 服务器刷新同步 属于服务器单向同步的一种。服务器把所有的数据都发给客户端,并刷新客户端的数据。
● 服务器发起的同步 前面六种同步方式都是由客户机主动发起的同步过程,而这种同步方式是由服务器首先通知客户端,让其开始某种类型的同步。