[发明专利]一种分布式系统中的数据同步方法和分布式系统有效
| 申请号: | 201110105169.X | 申请日: | 2011-04-26 |
| 公开(公告)号: | CN102760126A | 公开(公告)日: | 2012-10-31 |
| 发明(设计)人: | 李智慧;李鼎;潘磊;李彦超;雷继斌 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30;G06Q30/00 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 逯长明;王宝筠 |
| 地址: | 英属开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 分布式 系统 中的 数据 同步 方法 | ||
技术领域
本申请涉及计算机技术领域,特别是一种分布式系统中的数据同步方法和分布式系统。
背景技术
在计算机技术中,通常基于生产者-消费者模型的设计架构。在生产者-消费者模型中,生产者用于生产数据,这些数据再由消费者来负责处理。请参阅图1,其为现有技术中一种基于生产者-消费者模型的架构示意图。如图1所示,生产者将数据写入缓冲区中,消费者再从缓存区中读取数据进行处理。这种基于生产者-消费者模型的数据访问方式,能够支持解耦、并发和忙闲不均等情况。例如,键盘输入程序是生产者,屏幕显示程序是消费者,字符是键盘输入程序生产的数据,键盘输入程序将生产的字符写入缓冲区,屏幕显示程序再从缓冲区中读取字符,对字符进行显示处理。
但是,发明人在研究中发现,现有的这种生产者-消费者模型只能支持在同一个数据中心上的不同子系统中完成数据的访问,例如,模型中的生产者位于数据中心A上的子系统1中,消费者位于数据中心A上的子系统2中,子系统2中的消费者对子系统1中的生产者所生产的数据进行处理。通常,“数据中心”就是指以外包方式让许多网上公司存放它们的设备,主要是网站服务器,或者存放数据的地方,是场地出租概念在因特网领域的延伸。如,数据中心为中国电信北京海淀机房。“子系统”就是实现一个或多个接口,这些接口定义子系统可以执行的行为。也就是说,子系统提供可调用的接口,完成可执行的行为。子系统部署在位于数据中心的网站服务器上,而在现有的生产者-消费者模型中,不同的子系统可以部署在位于同一个数据中心的同一个网站服务器上,也可以部署在位于同一个数据中心的不同网站服务器上。
而对于位于不同数据中心的生产者和消费者,例如,生产者位于数据中心A的子系统1中,而消费者位于数据中心B的子系统2中,现有的生产者-消费者模型则无法实现数据的访问,即,数据中心A的消费者无法对远程的数据中心B的生产者所生产的数据进行处理。
发明内容
为了解决上述技术问题,本申请实施例提供了一种分布式系统中的数据同步方法和分布式系统,以能够支持本地的消费者对远程的生产者生产的数据进行处理。
本申请实施例公开了如下技术方案:
一种分布式系统,包括至少两个子系统,每个子系统分别位于不同的数据中心上,其中,每个子系统包括消费者模块、生产者模块、消费者存储模块和生产者存储模块,在位于任意一个数据中心的子系统中,
生产者模块,用于生产数据,将生产的数据写入到本地子系统的消费者存储模块和生产者存储模块;
消费者模块,用于从本地子系统的消费者存储模块中读取数据,对读取的数据进行处理;
生产者存储模块,用于存储本地子系统的生产者模块写入的数据,向位于除本地子系统所在的数据中心之外的其它数据中心的子系统中的消费者存储模块同步所存储的数据;
消费者存储模块,用于存储本地子系统的生产者模块写入的数据和位于本地子系统所在的数据中心之外的其它数据中的子系统中的生产者存储模块同步的数据。
一种分布式系统中的数据同步方法,包括:
本地子系统的生产者模块将生产的数据写入到本地子系统的消费者存储模块和生产者存储模块;
本地子系统的生产者存储模块向位于除本地子系统所在的数据中心之外的其它数据中心的子系统中的消费者存储模块同步所存储的数据,以便位于除本地子系统所在的数据中心之外的其它数据中心的子系统中的消费者模块从同步后的消费者存储模块中读取数据,对读取的数据进行处理。
由上述实施例可以看出,与现有技术相比,本申请具有如下优点:
分布式系统中分别位于不同数据中心的每个子系统同时包括生产者存储模块和消费者存储模块,位于一个数据中心的子系统中的生产者存储模块跨越数据中心向位于其它数据中心的子系统中的消费者存储模块进行数据同步,依次实现各个子系统之间的交叉同步,最终保证整个分布式系统的数据同步,从而能够支持本地的消费者对远程的生产者生产的数据进行处理。并且,对于每个子系统而言,向外进行数据同步过程和接受外面的数据同步过程可以并发执行,提高了整个分布式系统的工作效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中一种基于生产者-消费者模型的架构示意图;
图2为本申请一种分布式系统的一个实施例的结构图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110105169.X/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





