一种基于自动容错技术的分布式数据传输方法技术

技术编号:8565276 阅读:170 留言:0更新日期:2013-04-11 07:36
本发明专利技术涉及一种分布式数据传输方法,尤其是一种基于自动容错技术的分布式数据传输方法。本发明专利技术属于通信技术领域。本发明专利技术实现的一种基于自动容错技术的分布式数据传输方法,其特征在于:本发明专利技术采用Peer-To-Peer的拓扑结构,集群中每个缓存节点都知道其它所有节点的存在,每个节点可以与任一节点进行通信,这种结构具有单跳数据分发,低延时的特点。本发明专利技术解决了传统技术的数据传输中缓存节点易丢失、丢失后很难恢复,数据节点中的数据难以复制共享等缺点。本发明专利技术作为一种分布式数据传输方法,其优点还在于完成对数据库查询结果的缓存,减少客户请求的处理时间,降低数据库端的负载,同时还要具有数据冗余备份和失败恢复的功能。

【技术实现步骤摘要】

本专利技术涉及ー种分布式数据传输方法,尤其是。本专利技术属于通信

技术介绍
随着现代企业互联网应用的规模越来越大,系统面对大量并发请求的处理能力越来越重要,在整个应用系统架构中,数据库层的访问速度会成为整个应用系统的瓶颈。数据缓存技术能够缓存数据库的查询结果,当下次访问同样数据时,可以直接从缓存中取,有效地降低了数据库层的访问负载量,提高了系统性能。但是,随着网络用户的不断増加,一台服务器的性能根本无法满足大量的并发请求,这种情况下就要使用服务器集群,而在集群环境下的数据传输就 是分布式数据传输。近年来出现了不少缓存产品,如Memcached, JBoss Cache, OSCache, Ehcache 等,但是这些分布式缓存产品在数据冗余备份和失败恢复方面存在一定的不足。Memcached并不支持冗余备份,服务器端所有节点的缓存内容是互异的,如果ー个节点出现故障宕机,那么该节点保存的所有数据也就没有了,所以Memcached存在单点失效问题。JBoss Cache支持两种冗余策略全局复制和Buddy复制,全局复制将数据复制给集群中所有节点,保证在失败转移时可以转移到集群中任何ー个节点,但它限制了系统的伸縮性;Buddy复制则挑选特定节点担当备份数据节点,但作为冗余备份的节点是通过其xml文件设置的,当备份节点失效时,就无法启动新的节点作为失效节点。OSCache提供的集群功能是非常有限的,无法让缓存中数据在各个节点间复制。Ehcache是ー个Java语言开发的简单缓存系统,没有提供冗余备份和失败恢复功能。现有的技术存在如下的弊端数据传输中缓存节点易丢失、丢失后很难恢复。数据节点中的数据难以复制共享。传输数据由于采用了完全复制,限制了系统的伸縮性。系统实现的分布式数据传输存在ー个明显缺点,就是当系统执行数据冗余备份或失败恢复功能时,网络中的数据传输量明显増大,对网络带宽的要求很高。本方法采用Peer-To-Peer的拓扑结构,集群中每个缓存节点都知道其它所有节点的存在,每个节点可以与任一节点进行通信,这种结构具有单跳数据分发,低延时的特点。本方法作为数据传输,功能是完成对数据库查询结果的缓存,減少客户请求的处理时间,降低数据库端的负载,同时还要具有数据冗余备份和失败恢复的功能。
技术实现思路
本专利技术的目的在于针对以上现有技术存在的不足,提供,以克服现有技术中数据传输中数据丢失、数据备份难、缓存失败不能恢复等问题。为了达到以上目的,本专利技术包含如下组成部分创建数据缓存模块——数据缓存模块是整个缓存系统的入口点,负责初始化系统的所有配置信息,建立和管理缓存对象,以及协调各模块间工作。数据同步模块——当集群中某个节点的缓存数据过期或有数据更新吋,如何保证所有节点间的缓存数据同步,这就需要有效的同步机制来保证缓存节点间的数据相同。创建算法模块——本方法采用先进先出算法(FIFO)算法进行数据替换吋,选择最早放入缓存的对象替换。该算法毎次替换时,从缓存中选择更新时间或者创建时间最早的对象换出缓存。数据通信模块一缓存通信模块提供了集群中节点间的相互交互,本方法基于TCP/IP通信协议,用于缓存节点间的通信。通信模块的调用是通过给复制缓存和分布式缓存注册监听器的方式实现的。建立服务模块一可靠性服务模块功能是提供缓存节点间的数据迁移和失败恢复,当有新缓存节点加入集群或有节点退出集群时,可靠性服务模块会被动态的调用。使用步骤为 步骤一创建数据缓存。建立数据缓存对象。并且对创建的每ー个数据缓存对象进行管理。步骤ニ创建同步器。系统自动在每个节点添加同步器,数据在发送接收的时候自动启用冋步器。步骤三算法计算,从缓存中选择更新时间或者创建时间最早的对象换出缓存数据对象。步骤四建立基于TCP/IP协议的通讯。将缓存的数据进行发送和接收,并且监听姆ー个节点。步骤五自动添加服务,新建立的缓存节点加入集群或节点退出集群时,可靠性服务模块会被动态的调用。如此,通过本专利技术,分布式缓存数据传输适于应用在大規模的集群服务器中。具有数据冗余备份和失败恢复功能,并有着良好的稳定性。其他系统可以很方便的集成此方法。具体实施例方式实施例一使用Microsoft VisualStudio. Net2008开发工具开发服务器端和客户端运行软件,具体方式为创建数据缓存模块——数据缓存模块是整个缓存系统的入口点,负责初始化系统的所有配置信息,建立和管理缓存对象,以及协调各模块间工作。数据同步模块——当集群中某个节点的缓存数据过期或有数据更新吋,如何保证所有节点间的缓存数据同步,这就需要有效的同步机制来保证缓存节点间的数据相同。创建算法模块——本方法采用先进先出算法(FIFO)算法进行数据替换吋,选择最早放入缓存的对象替换。该算法毎次替换时,从缓存中选择更新时间或者创建时间最早的对象换出缓存。数据通信模块——缓存通信模块提供了集群中节点间的相互交互,本方法基于TCP/IP通信协议,用于缓存节点间的通信。通信模块的调用是通过给复制缓存和分布式缓存注册监听器的方式实现的。建立服务模块——可靠性服务模块功能是提供缓存节点间的数据迁移和失败恢复,当有新缓存节点加入集群或有节点退出集群时,可靠性服务模块会被动态的调用。使用步骤为步骤ー创建数据缓存。建立数据缓存对象。并且对创建的每ー个数据缓存对象进行管理。步骤ニ创建同步器。系统自动在每个节点添加同步器,数据在发送接收的时候自动启用冋步器。步骤三算法计算,从缓存中选择更新时间或者创建时间最早的对象换出缓存数据对象。步骤四建立基于TCP/IP协议的通讯。将缓存的数据进行发送和接收,并且监听姆ー个节点。步骤五自动添加服务,新建立的缓存节点加入集群或节点退出集群时,可靠性服务模块会被动态的调用。 除上述实施例外,本专利技术还可以有其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本专利技术要求的保护范围。本文档来自技高网
...

【技术保护点】
一种基于自动容错技术的分布式数据传输方法,其特征在于:分布式数据传输方法包括如下模块:创建数据缓存模块——数据缓存模块是整个缓存系统的入口点,负责初始化系统的所有配置信息,建立和管理缓存对象,以及协调各模块间工作;数据同步模块——当集群中某个节点的缓存数据过期或有数据更新时,如何保证所有节点间的缓存数据同步,这就需要有效的同步机制来保证缓存节点间的数据相同;创建算法模块——本方法采用先进先出算法(FIFO)算法进行数据替换时,选择最早放入缓存的对象替换。该算法每次替换时,从缓存中选择更新时间或者创建时间最早的对象换出缓存;数据通信模块——缓存通信模块提供了集群中节点间的相互交互,本方法基于TCP/IP通信协议,用于缓存节点间的通信。通信模块的调用是通过给复制缓存和分布式缓存注册监听器的方式实现的;建立服务模块——可靠性服务模块功能是提供缓存节点间的数据迁移和失败恢复,当有新缓存节点加入集群或有节点退出集群时,可靠性服务模块会被动态的调用。

【技术特征摘要】
1.一种基于自动容错技术的分布式数据传输方法,其特征在于分布式数据传输方法包括如下模块创建数据缓存模块一数据缓存模块是整个缓存系统的入口点,负责初始化系统的所有配置信息,建立和管理缓存对象,以及协调各模块间工作;数据同步模块一当集群中某个节点的缓存数据过期或有数据更新时,如何保证所有节点间的缓存数据同步,这就需要有效的同步机制来保证缓存节点间的数据相同;创建算法模块——本方法采用先进先出算法(FIFO)算法进行数据替换时,选择最早放入缓存的对象替换。该算法每次替换时,从缓存中选择更新时间或者创建时间最早的对象换出缓存;数据通信模块——缓存通信模块提供了集群中节点间的相互交互,本方法基于TCP/IP 通信协议,用于缓存节点间的通信。通信模块的调用是通过给复制缓存和分布式...

【专利技术属性】
技术研发人员:朱炜李骁淳
申请(专利权)人:镇江雅迅软件有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1