一种实现数据一致性的方法及其系统 技术领域 本发明涉及计算机数据处理技术领域, 尤其是涉及一种应用于计算机信息技术领 域的基于缓存技术的实现数据一致性的方法及其系统。
背景技术 缓存技术应用广泛, 该技术有以下优点 :
(1) 减少网络带宽, 从而减轻网络拥塞 ;
(2) 减少客户端访问延迟 ;
(3) 由于有些数据可以直接从缓存返回给客户端, 从而可以减轻服务器的负载 ;
(4) 如果远程服务器故障或网络故障造成远程服务器无法响应客户端的要求, 客 户端可以从缓存中取得数据, 从而增加了远程服务器的健壮性。
在信息化工程中, 大量研究主要关注在客户端与服务器缓存之间数据一致性上, 而在服务器缓存与数据库之间的数据一致性的研究较少。
当前服务器缓存数据与关系数据库保持一致性的技术主要有以下几种方式 :
(1) 直接从数据库中获取数据, 没有设置缓存, 如图 1 所示。 应用对象获取数据时, 通过访问对象联接数据库, 数据库执行相应操作返回数据。 采用这种方式, 每次数据获取都 要建立一个新的连接, 数据获取都是从数据库中获取, 不会有缓存数据与关系数据库的数 据一致性问题。对于访问量大的服务器, 连接池的资源有限, 新的连接需要进行排队等候, 从而造成了访问速度慢、 效率低。
(2) 采用 TTL(Time-to-Live) 缓存技术, 在这种方法中, 每个对象赋予一个对象生 存期 t, 用来记录缓存副本的有效时间, 当客户机对服务器进行请求时, 如果请求时间小于 TTL, 则认为缓存副本是有效的, 缓存将不向服务器进行请求。当请求时间大于 TTL 时, 我们 称 TTL 失效, 此时缓存收到的第一个对某个对象的请求时, 会向服务器发送 GET 请求, 更新 缓存信息。 TTL 机制实现比较容易, 但是在 TTL 未失效的时间内网站的源对象版本发生更改 时, 无法保持缓存对象与服务器的原始版本数据一致性。也就是说客户端可能访问到过时 的数据。
(3) 与当前发明最相近似的现有技术方案国际商业机器公司于 2005 年 10 月 26 日 申请, 2006 年 06 月 28 日公开, 公开号为 CN1794207A 的中国发明专利申请 《实现缓存一致 性的方法和系统》 。 该发明的主要内容为 : 一种用于当允许应用继续将改变写入数据文件时 支持由服务器对数据文件的改变进行并行记录的系统和方法。响应于数据文件的改变, 创 建该文件的近即时版本。将反映数据文件的改变的元数据与缓存中的文件中的版本同步, 并将其记录到持久性存储器中。在记录文件的元数据改变的过程中, 可继续进行随后的对 数据文件的改变, 且可将反映所述改变的元数据记录到该文件的即时版本中, 也可将该版 本与持久性存储器中的元数据的版本同步。 但是该发明主要是研究客户端与服务器缓存之 间的数据一致性问题。
发明内容 本发明提供一种实现数据一致性的方法及其系统, 该方法及其系统解决了服务器 缓存与关系数据库之间的数据一致性问题, 保证服务器缓存数据的有效性, 减少对关系数 据库的连接访问, 提高访问速度及效率。
本发明提供实现数据一致性的方法的技术实现方案, 一种实现数据一致性的方 法, 包括以下步骤 :
S101 : 数据访问组件对象接受用户消息, 根据用户消息生成动态 SQL ;
S102 : 如果动态 SQL 是数据获取, 则执行步骤 S103 ; 否则, 数据访问组件对象根据 XML 数据库配置文件连接关系数据库, 获取数据, 数据访问组件对象再将数据传给应用层, 流程结束 ;
S103 : 数据访问组件对象根据全局性质的数据访问组件对象名、 数据获取对象名 查询全局的缓存数据集合, 若存在数据, 则说明缓存数据有效, 返回数据给数据访问组件对 象, 由数据访问组件对象传递给应用层, 流程结束 ; 若没有数据, 根据数据访问组件对象名、 数据获取对象名, 创建一个全局缓存组件对象, 并将获取的数据动态 SQL、 数据访问组件对 象名、 数据获取对象名传给该缓存组件对象 ;
S104 : 缓存组件对象解析 XML 缓存配置文件、 XML 数据库配置文件, 查看该数据访 问组件对象是否设置缓存, 若设置缓存, 则说明全局缓存组件对象监测本地依赖文件, 当依 赖文件发生变化时, 系统删除数据访问组件对象的缓存以及全局缓存对象 ; 若没有设置缓 存, 则执行步骤 S106 ;
S105 : 缓存组件对象根据数据访问组件对象名解析 XML 缓存初始化文件, 若有数 据, 则获取一条记录并生成一个触发器 SQL, 连接关系数据库并执行, 同时删除这条 XML 文 件记录, 依次循环, 直至文件中找不到数据为止 ;
S106 : 缓存组件对象连接关系数据库, 执行数据访问组件对象所传入的获取数据 动态 SQL, 获取数据, 若该数据访问组件对象设置缓存, 则更新缓存数据 ;
S107 : 缓存组件对象将数据传给数据访问组件对象, 由数据访问组件对象传递给 应用层, 流程结束。
作为本发明实现数据一致性的方法技术方案的进一步改进, 实现数据一致性的方 法包括缓存组件获取数据过程, 该过程包括以下步骤 :
S201 : 缓存组件对象的中心控制器接收数据访问组件对象的重要属性, 该重要属 性包括获取数据动态 SQL、 数据访问组件对象名、 数据获取对象名, 将重要属性写入公共属 性集合中 ;
S202 : 中心控制器解析包括有关系数据库类型、 数据库名的 XML 数据库配置文件, 并将解析内容写入公共属性集合 ;
S203 : 中心控制器通过数据访问组件对象名查找 XML 缓存配置文件, 若找到数据, 则解析包括数据访问组件对象名、 本地依赖文件全局路径在内的相关属性, 写入缓存数据 集合 ; 若没有找到数据, 则说明该数据访问组件对象没有设置缓存, 执行步骤 S208 ;
S204 : 中心控制器通过数据访问组件对象名查找 XML 缓存初始化文件, 若有数据, 找到一条记录, 并解析包括数据库表名、 数据库服务器的本地依赖文件在内的相关属性, 写 入公共属性集合中, 完成后, 中心控制器向触发器生成器发送创建触发器消息 ;
S205 : 触发器生成器调用动态 SQL 拼装生成器和公共属性集合动态产生一个创建 触发器 SQL, 并将该 SQL 发送给连接器 ;
S206 : 连接器收到创建触发器的 SQL, 连接关系数据库, 关系数据库执行创建触发 器 SQL, 将结果返回给连接器, 连接器将消息传给中心控制器 ; 否则若连接器超时, 则中心 控制器发送一个错误信息, 流程结束 ;
S207 : 中心控制器收到创建触发器成功消息, 在 XML 缓存初始化文件中删除该记 录, 重复执行步骤 S204 至步骤 S206, 直至 XML 缓存初始化文件中找不到数据访问组件对象 名的相关节点 ;
S208 : 中心控制器将公共属性集合中的获取数据动态 SQL 发送给连接器 ;
S209 : 连接器收到获取数据动态 SQL, 连接关系数据库, 关系数据库执行该 SQL, 将 数据返回给连接器, 连接器将数据传给中心控制器 ; 否则若连接器超时, 则中心控制器发送 一个错误信息, 流程结束 ;
S210 : 中心控制器将数据传给数据访问组件对象, 若该数据访问组件对象设置了 缓存, 则将该数据以数据访问组件对象名和数据获取对象名组合一起作为关键字查询插入 缓存数据集合 ; S211 : 中心控制器向依赖文件监测器发送监测消息, 执行缓存组件监测过程。
作为本发明实现数据一致性的方法技术方案的进一步改进, 缓存组件监测过程包 括以下步骤 :
S301 : 依赖文件监测器收到中心控制器所发送的监测消息后, 从公共属性集合中 获取到本地依赖文件路径 ;
S302 : 依赖文件监测器开始监测本地依赖文件 ;
S303 : 依赖文件监测器发现本地依赖文件发生变化时, 向中心控制器发送缓存无 效消息 ;
S304 : 中心控制器收到缓存无效消息后, 通过公共属性集合中的数据访问组件对 象名、 数据获取对象名查询缓存数据集合, 找到该数据后进行删除 ;
S305 : 中心控制器向依赖文件监测器发送停止监测消息, 依赖文件监测器收到消 息后停止监测工作 ;
S306 : 系统删除该缓存组件对象。
作为本发明实现数据一致性的方法技术方案的进一步改进, 实现数据一致性的方 法包括依赖文件同步过程, 该过程包括以下步骤 :
S401 : 数据库服务器中的文件发送组件监测关系数据库, 应用服务器的文件接收 组件监听通讯端口 ;
S402 : 当数据库表执行插入、 更新及删除操作时, 表触发器执行更新本地依赖文 件, 并向监测表插入一条包括应用服务器的 IP 地址, 应用服务器的本地依赖文件的全局路 径和数据库服务器的本地依赖文件全局路径的新记录 ;
S403 : 文件发送组件发现监测表中有新记录后, 获取该记录 ;
S404 : 文件发送组件与文件接收组件进行通讯, 应用服务器的本地依赖文件实现 更新, 与数据库服务器的本地依赖文件保持一致 ;
S405 : 文件发送组件重复执行步骤 S403 和步骤 S404, 直到监测表中没有新记录 ;
S406 : 数据库服务器中的文件发送组件监测关系数据库, 应用服务器的文件接收 组件监听通讯端口。
本发明还提供一种采用上述实现数据一致性的方法实现数据一致性的系统的技 术实现方案, 包括 : 应用服务器和数据库服务器, 应用服务器进一步包括数据访问组件、 缓 存组件、 文件接收组件和缓存数据集合, 数据库服务器进一步包括文件发送组件和关系数 据库 ;
数据访问组件与缓存组件、 关系数据库相连, 数据访问组件接受用户消息, 根据用 户消息生成动态 SQL ; 数据访问组件根据 XML 数据库配置文件连接关系数据库并获取数据, 数据访问组件再将数据传给应用层 ;
数据访问组件与缓存数据集合相连, 根据全局性质的数据访问组件对象名、 数据 获取对象名查询全局的缓存数据集合, 若存在数据则返回数据给数据访问组件, 由数据访 问组件传递给应用层 ; 若没有数据, 则根据数据访问组件对象名、 数据获取对象名, 创建一 个全局的缓存组件, 并将获取的数据动态 SQL、 数据访问组件对象名、 数据获取对象名传送 给缓存组件 ;
缓存组件解析 XML 缓存配置文件、 XML 数据库配置文件, 查看数据访问组件是否设 置缓存, 若设置缓存, 则数据访问组件的缓存被删除, 同时该全局缓存对象被删除, 更新缓 存数据 ; 若没有设置缓存, 则缓存组件连接关系数据库, 执行数据访问组件所传入的获取数 据动态 SQL, 并获取数据 ;
缓存组件根据数据访问组件对象名解析 XML 缓存初始化文件, 若有数据, 则获取 一条记录由内部机制生成一个触发器 SQL, 连接关系数据库并执行, 同时删除该条 XML 文件 记录, 依次循环, 直至文件中找不到数据为止, 缓存组件将数据传给数据访问组件, 由数据 访问组件传递给应用层 ;
文件发送组件与关系数据库相连, 文件接收组件与文件发送组件相连。
作为本发明实现数据一致性的系统技术方案的进一步改进, 缓存组件包括中心控 制器、 触发器生成器、 依赖文件监测器、 动态 SQL 拼装生成器、 公共属性集合、 连接器 ;
中心控制器与数据访问组件相连, 接收外部消息, 返回数据或提示信息 ; 解析 XML 缓存初始化文件、 XML 缓存配置文件并写入公共属性集合 ; 向触发器生成器、 依赖文件监测 器发送动作消息 ; 接收触发器生成器、 依赖文件监测器的消息 ; 接收关系数据库的返回结 果;
触发器生成器根据不同的关系数据库通过动态 SQL 拼装生成器创建一个触发器 的动态 SQL, 在关系数据库执行后, 当触发器监测到表中数据发生变化, 更新数据库服务器 中所设定的本地依赖文件 ; 并向数据库中的监测表中插入一条记录 ;
依赖文件监测器监测本地依赖文件, 当本地依赖发生变化时, 向中心控制器发送 缓存无效消息 ;
动态 SQL 拼装生成器根据公共属性集合进行 SQL 的拼装, 实现动态 SQL ;
公共属性集合存储 XML 缓存初始化文件或 XML 缓存配置文件的解析信息 ;
连接器分别与中心控制器、 触发生成器、 关系数据库相连接。
作为本发明实现数据一致性的系统技术方案的进一步改进, XML 数据库配置文件 属性包括 : 数据库类型、 服务器名、 数据库名、 登录数据库用户名、 登录数据库密码。作为本发明实现数据一致性的系统技术方案的进一步改进, XML 缓存配置文件属 性包括 : 数据对象名和本地依赖文件的全局路径。
作为本发明实现数据一致性的系统技术方案的进一步改进, XML 缓存初始化文件 属性包括 : 数据对象名、 建立触发器所依赖的数据表、 数据库服务器中的本地依赖文件的全 局路径。
通过应用上述本发明技术方案所描述的一种实现数据一致性的方法及其系统, 应 用服务器采用缓存技术, 减少对数据库服务器的访问压力, 加快访问速度, 提高访问效率 ; 根据数据访问频率, 可自定义数据库中数据块在服务器是否设置缓存 ; 实现应用服务器缓 存数据与数据库的数据一致性。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本 发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以 根据这些附图获得其他的附图。
图 1 为现有技术一种具体实施方式所描述的无缓存下应用对象获取数据过程示 图 2 为本发明一种具体实施方式所描述的一种实现数据一致性的系统的工作原意图 ;
理图 ; 图 3 为本发明一种具体实施方式所描述的一种实现数据一致性的系统中缓存组 件的功能结构框图 ;
图 4 为本发明一种具体实施方式所描述的一种实现数据一致性的方法中依赖文 件同步过程的程序流程图 ;
其中, 1- 应用服务器, 2- 数据库服务器, 3- 数据访问组件, 4- 缓存组件, 5- 文件接 收组件, 6- 缓存数据集合, 7- 文件发送组件, 8- 关系数据库, 9- 中心控制器, 10- 触发器生成 器, 11- 依赖文件监测器, 12- 动态 SQL 拼装生成器, 13- 公共属性集合, 14- 连接器, 15- 触发 器生成接口, 18- 关系数据库触发器生成器组件。
具体实施方式
下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完 整地描述, 显然, 所描述的实施例仅仅是本发明的一部分实施例, 而不是全部的实施例。基 于本发明中的实施例, 本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其 他实施例, 都属于本发明保护的范围。
如附图 2、 3、 4 所示, 给出了本发明一种实现数据一致性的方法及其系统应用于计 算机信息技术领域数据处理的具体实施例, 下面结合附图和具体实施例对本发明作进一步 说明。
本发明将缓存数据与数据库的数据一致性设计为一种文件依赖关系, 其系统结构 组成和工作原理如图 2 所示。
一种实现数据一致性的系统的具体实施方式, 该系统包括应用服务器 1 和数据库服务器 2, 应用服务器 1 进一步包括数据访问组件 3、 缓存组件 4、 文件接收组件 5 和缓存数 据集合 6, 数据库服务器 2 进一步包括文件发送组件 7 和关系数据库 8 ;
数据访问组件 3 与缓存组件 4、 关系数据库 8 相连, 数据访问组件 3 接受用户消息, 根据用户消息生成动态 SQL ; 数据访问组件 3 根据 XML 数据库配置文件连接关系数据库 8 并 获取数据, 数据访问组件 3 再将数据传给应用层 ;
数据访问组件 3 与缓存数据集合 6 相连, 根据全局性质的数据访问组件对象名、 数 据获取对象名查询全局的缓存数据集合 6, 若存在数据则返回数据给数据访问组件 3, 由数 据访问组件 3 传递给应用层 ; 若没有数据, 则根据数据访问组件对象名、 数据获取对象名, 创建一个全局的缓存组件 4, 并将获取的数据动态 SQL、 数据访问组件对象名、 数据获取对 象名传送给缓存组件 4 ;
缓存组件 4 解析 XML 缓存配置文件、 XML 数据库配置文件, 查看数据访问组件 3 是 否设置缓存, 若设置缓存, 则数据访问组件 3 的缓存被删除, 同时该全局缓存对象被删除, 更新缓存数据 ; 若没有设置缓存, 则缓存组件 4 连接关系数据库 8, 执行数据访问组件 3 所 传入的获取数据动态 SQL, 并获取数据 ;
缓存组件 4 根据数据访问组件对象名解析 XML 缓存初始化文件, 若有数据, 则获取 一条记录由内部机制生成一个触发器 SQL, 连接关系数据库 8 并执行, 同时删除该条 XML 文 件记录, 依次循环, 直至文件中找不到数据为止, 缓存组件 4 将数据传给数据访问组件 3, 由 数据访问组件 3 传递给应用层 ; 文件发送组件 7 与关系数据库 8 相连, 文件接收组件 5 与文件发送组件 7 相连。
一种实现数据一致性的方法的具体实施方式, 其工作过程包括以下步骤 :
S101 : 数据访问组件 3 对象接受用户消息, 根据用户消息生成动态 SQL ;
S102 : 如果动态 SQL 是数据获取, 则执行步骤 S103 ; 否则, 数据访问组件 3 对象根 据 XML 数据库配置文件连接关系数据库 8, 获取数据, 数据访问组件 3 对象再将数据传给应 用层, 流程结束 ;
S103 : 数据访问组件 3 对象根据全局性质的数据访问组件对象名、 数据获取对象 名查询全局的缓存数据集合 6, 若存在数据, 则说明缓存数据有效, 返回数据给数据访问组 件 3 对象, 由数据访问组件 3 对象传递给应用层, 流程结束。若没有数据, 根据数据访问组 件 3 对象名、 数据获取对象名, 创建一个全局缓存组件对象, 并将获取的数据动态 SQL、 数据 访问组件对象名、 数据获取对象名传给该缓存组件 4 对象 ;
S104 : 缓存组件 4 对象解析 XML 缓存配置文件、 XML 数据库配置文件, 查看该数据 访问组件 3 对象是否设置缓存, 若设置缓存, 则说明全局缓存组件对象监测本地依赖文件 ( 应用服务器的本地依赖文件与数据库服务器的本地依赖文件通过文件接收组件、 文件发 送组件进行同步 )。 当依赖文件发生变化时, 系统删除数据访问组件 3 对象的缓存以及全局 缓存对象 ; 若没有设置缓存, 则执行步骤 S106 ;
S105 : 缓存组件 4 对象根据数据访问组件 3 对象名解析 XML 缓存初始化文件, 若有 数据, 则获取一条记录由内部机制生成一个触发器 SQL, 连接关系数据库 8, 并执行, 同时删 除这条 XML 文件记录, 依次循环, 直至文件中找不到数据为止 ;
S106 : 缓存组件 4 对象连接关系数据库 8, 执行数据访问组件 3 对象所传入的获取 数据动态 SQL, 获取数据, 若该数据访问组件 3 对象设置缓存, 则更新缓存数据 ;
S107 : 缓存组件 4 对象将数据传给数据访问组件 3 对象, 由数据访问组件 3 对象传 递给应用层, 流程结束。
一种实现数据一致性的系统进一步包括缓存组件 4, 缓存组件 4 由中心控制器 9、 触发器生成器 10、 依赖文件监测器 11、 动态 SQL 拼装生成器 12、 公共属性集合 13 组成。其 中, 触发器生成器 10 进一步包括触发器生成接口 15 和若干个关系数据库触发器生成器组 件 16。缓存组件 4 各个组成部分的功能结构说明如下表 1 所示。
表 1 缓存组件 4 的功能结构说明 实现数据一致性的方法进一步包括缓存组件获取数据过程, 该过程包括以下步骤: S201 : 缓存组件 4 对象的中心控制器 9 接收数据访问组件 3 对象的几个重要属性, 包括获取数据动态 SQL、 数据访问组件对象名、 数据获取对象名, 将这些属性写入公共属性 集合 13 中 ;
S202 : 中心控制器 9 解析 XML 数据库配置文件 ( 包括关系数据库类型、 数据库名 等 ) 并将这些解析内容写入公共属性集合 13 中 ;
S203 : 中心控制器 9 通过数据访问组件 3 对象名查找 XML 缓存配置文件, 若找到 数据, 则解析相关属性 ( 包括数据访问组件对象名、 本地依赖文件全局路径等 ), 写入缓存 数据集合 6 中 ; 若没有找到数据, 则说明该数据访问组件 3 对象没有设置缓存, 执行步骤 S208 ;
S204 : 中心控制器 9 通过数据访问组件对象名查找 XML 缓存初始化文件, 若有数
据, 找到一条记录, 并解析相关属性 ( 包括数据库表名、 数据库服务器的本地依赖文件 ), 写 入公共属性集合 13 中, 完成后, 中心控制器 9 向触发器生成器 10 发送创建触发器消息 ;
S205 : 触发器生成器 10 调用动态 SQL 拼装生成器 12 和公共属性集合 13 动态产生 一个创建触发器 SQL, 并将该 SQL 发送给连接器 14 ;
S206 : 连接器 14 收到创建触发器的 SQL, 连接关系数据库 8, 关系数据库 8 执行创 建触发器 SQL, 将结果返回给连接器 14, 连接器 14 将消息传给中心控制器 9 ; 否则若连接器 14 超时, 则中心控制器 9 发送一个错误信息, 流程结束 ;
S207 : 中心控制器 9 收到创建触发器成功消息, 在 XML 缓存初始化文件中删除该记 录, 重复执行步骤 S204 至步骤 S207, 直至 XML 缓存初始化文件中找不到数据访问组件对象 名的相关节点 ;
S208 : 中心控制器 9 将公共属性集合 13 中的获取数据动态 SQL 发送给连接器 14 ;
S209 : 连接器 14 收到获取数据动态 SQL, 连接关系数据库 8, 关系数据库 8 执行该 SQL, 将数据返回给连接器 14, 连接器 14 将数据传给中心控制器 9 ; 否则若连接器 14 超时, 则中心控制器 9 发送一个错误信息, 流程结束 ;
S210 : 中心控制器 9 将数据传给数据访问组件 3 对象, 若该数据访问组件 3 对象设 置了缓存, 则将该数据以数据访问组件对象名和数据获取对象名组合一起作为关键字查询 插入缓存数据集合 6 ;
S211 : 中心控制器 9 向依赖文件监测器 11 发送监测消息, 执行缓存组件监测流程。
实现数据一致性的方法进一步包括缓存组件监测过程, 该过程包括以下步骤 :
S301 : 依赖文件监测器 11 收到中心控制器 9 所发送的监测消息后, 从公共属性集 合 13 中获取到本地依赖文件路径 ;
S302 : 依赖文件监测器 11 开始监测本地依赖文件 ;
S303 : 依赖文件监测器 11 发现本地依赖文件发生变化时, 向中心控制器 9 发送缓 存无效消息 ;
S304 : 中心控制器 9 收到缓存无效消息后, 通过公共属性集合 13 中的数据访问组 件对象名、 数据获取对象名查询缓存数据集合 6, 找到该数据后进行删除 ;
S305 : 中心控制器 9 向依赖文件监测器 11 发送停止监测消息, 依赖文件监测器 11 收到消息后停止监测工作 ;
S306 : 系统删除该缓存组件 4 对象。
实现数据一致性的方法进一步包括依赖文件的同步过程, 该过程包括以下步骤 :
S401 : 数据库服务器 2 中的文件发送组件 7 监测关系数据库 8, 应用服务器 1 的文 件接收组件 5 监听通讯端口 ;
S402 : 当数据库表执行插入、 更新及删除操作时, 表触发器执行两个工作, 首先更 新本地依赖文件, 其次向监测表中插入一条新记录 ( 包括应用服务器 1 的 IP 地址, 应用服 务器 1 的本地依赖文件的全局路径, 数据库服务器 2 的本地依赖文件的全局路径 ) ;
S403 : 文件发送组件 7 发现监测表中有新记录后, 获取该记录 ;
S404 : 文件发送组件 7 与文件接收组件 5 进行通讯, 应用服务器 1 的本地依赖文件 实现更新, 与数据库服务器 2 中的本地依赖文件保持一致 ;
S405 : 文件发送组件 7 重复执行步骤 S403 和步骤 S404, 直到监测表中没有新记录; S406 : 数据库服务器 2 中的文件发送组件 7 监测关系数据库 8, 应用服务器 1 的文 件接收组件 5 监听通讯端口。
XML 数据库配置文件设计采用 XML 格式文件实现配置, 配置文件的属性如下 :
(1)dbType : 数据库类型 ( 如 Oracle) ;
(2)connect-server : 服务器名 ;
(3)connect-dataBase : 数据库名 ;
(4)connect-user : 登录数据库用户名 ;
(5)connect-password : 登录数据库密码 ;
具体如下 :
XML 缓存配置文件的结构设计如下表 2 所示。
表 2 XML 缓存配置文件的结构设计说明表 具体如下 :
XML 缓存初始化文件的结构设计如下表 3 所示。
表 3 XML 缓存初始化文件的结构设计说明表 具体如下 :本发明具体实施方式所描述的一种实现数据一致性的方法及其系统通过文件依 赖实现了应用服务器缓存与数据库之间的数据一致性, 解决了服务器缓存与关系数据库之 间的数据一致性问题, 保证服务器缓存数据的有效性, 减少对关系数据库的连接访问, 提高 访问速度及效率。其中, 应用服务器采用缓存技术, 减少对数据库服务器的访问压力, 加快 访问速度, 提高访问效率 ; 根据数据访问频率, 可自定义数据库中数据块在服务器是否设置 缓存。
以上所述, 仅是本发明的较佳实施例而已, 并非对本发明作任何形式上的限制。 虽 然本发明已以较佳实施例揭露如上, 然而并非用以限定本发明。任何熟悉本领域的技术人 员, 在不脱离本发明技术方案范围情况下, 都可利用上述揭示的方法和技术内容对本发明 技术方案做出许多可能的变动和修饰, 或修改为等同变化的等效实施例。 因此, 凡是未脱离 本发明技术方案的内容, 依据本发明的技术实质对以上实施例所做的任何简单修改、 等同 替换、 等效变化及修饰, 均仍属于本发明技术方案保护的范围内。