SQL Remote 是一种异步的同步模式:它使用消息在数据库间交换数据。消息通常是文件或特殊格式的电子邮件消息。每个数据库连接的消息代理发送与其数据更改有关的消息。该代理还从一个或多个其它数据库接收消息,然后根据收到的消息内容来修改数据库。
在基于消息的通信中,每个消息都包含自己的目标地址和其它控制信息,因此在进行信息交换的应用程序之间不需要直接连接。例如,电子邮件消息包含目标地址;在发送服务器和接收者之间没有直接连接。
正如基于会话的客户端/服务器应用程序依赖网络通信协议栈(如 TCP/IP)一样,基于消息的应用程序依赖消息服务,如 Internet 简单邮件传输协议(Simple Mail Transfer Protocol,简称 SMTP)或简单的共享文件链接。
消息服务使用存储并转发方法将每条消息发送到其目标:例如,电子邮件系统会将消息一直存储到接收者打开邮件文件夹阅读邮件时,这时电子邮件系统才会转发消息。
在消息系统之上建立同步系统将意味着,基于消息的同步系统(如 SQL Remote)不必执行存储并转发系统即可将消息传送到目标。正如基于会话的客户端/服务器应用程序,在客户端和服务器间传递信息时不执行自己的协议堆栈一样,SQL Remote 使用现有消息系统来传递消息。
为了可靠地运行,基于消息的同步系统必须保证所有消息都能到达其目标,并且保证这些消息都能按其发送顺序予以应用。SQL Remote 包含一个协议,用于保证同步更新能够按正确的顺序予以应用。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |