基于Web异构同步中间件系统.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Web异构同步中间件系统

基于Web异构同步中间件系统   摘要:   当前的信息管理系统越来越庞大,有的系统会涉及到几十个部门,而且每个部门都会使用不同的数据库系统,如何保证分布式异构数据库之间数据的同步,是一个严峻的问题。基于Rabbitmq和Redis技术设计实现异构数据库数据同步中间件,并将其应用到湖北省农村信息化示范省项目中,取得良好效果。   关键词:   Web;异构;中间件;RabbitMQ; Redis   1 问题的提出   随着企业信息技术和计算机网络技术的飞速发展.企业内部的信息系统越来越多,信息化已经成为人类社会经济发展的关键因素。因此政府及各企事业单位都相继建立起了自己的数据库信息系统,以满足信息存储和信息共享等多方面的需求,为部门内部以及与公众之间的信息交互建立起了桥梁。   由于建立的时间和应用的目标不同,这些系统通常相对比较独立,当然这些系统的底层数据库也是相互独立的。异地分布是分散信息必然的选择,保证分布数据的一致性成为当前的迫切需要。数据同步技术可以有效保证分布数据的一致性,用户只需访问本地副本而减少访问数据的时间延迟,提高了用户应用的性能。这些数据库被独立的创建和管理,有自己的模式、数据模型和操作语言,物理上和逻辑上都存在异构,这些数据库被称为分布式异构数据库(Distributed Het-erogeneous Database,DHD)。从企业的角度来看,这些数据库中的数据相互之间是有逻辑联系的,很多应用都必须分别访问多个数据库才能实现。   因此.如何保证分布式异构数据库之间的数据一致性.或者说保证分布式异构数据库之间数据的同步,是一个严峻的问题。以我院参与的湖北省农村信息化示范省项目为例,系统涉及到的几十个部门,每个部门都会使用不同的数据库系统,产生不同格式的数据,极大地影响到了数据的安全以及数据的共享。   2 系统总体设计   (1)系统架构设计   湖北省农业厅作为“一级部门”,其发布的消息可以直接同步到下级部门。襄阳、荆门、荆州农业厅作为“二级部门”,在其各自网站上可以显示来自上级部门的信息。   这里Rabbitmq用作缓存队列对需要同步的湖北省农业厅数据库信息进行缓存,确保消息的实时更新和跟进。必要时也可以另起一个Rabbitmq作为镜像队列,防止Rabbitmq故障之后出现消息同步的信息丢失,当然支持灾备固然好,但是会降低系统性能.进而影响同步处理的速度,但这也可以通过横向扩展来解决。之后Rabbitmq保存的消息通过中间件处理,将消息同步到二级部门的数据库中,这里二级部门或许使用了不同于一级部门的数据库,然而中间件通过相关技术屏蔽了数据库之间的差异,通过内存数据库Redis(也可以说是缓存)高速有序地将数据信息传递到3个同级网站上,另外Redis的处理速度受网络带宽的限制,提高带宽会大幅度提升Redis的处理速度。   (2)系统业务流程分析   系统使用首先需要注册,未注册的用户可以查看网站首页当中的各个农业信息。拥有相应权限的注册用户才能使用该系统完成数据信息同步工作。   系统业务流程主要包括查看同步状态信息、设置同步网站、制定同步时间、同步信息审核和确定同步显示进度五个部分,如图2所示。   首先是操作员查看同步信息状态,将最新动态同步到指定的一个或多个二级部门,并制定好信息同步的时间,设置完成之后,由领导进行审批,这里的审批是指二级部门向一级部门同步消息,一级部门直接向二级部门同步消息时可以不需要审批。最后就是同步进度显示,默认显示完成进度百分比,也可以设置成根据完成数量显示.   (3)系统功能模块   系统功能主要包括用户登录、审核管理、日志管理、信息管理和通知管理五个部分,如图3所示。   ①用户管理:管理员可以对用户进行增删该查分配权限等操作,普通用户只能修改个人信息。   ②日志管理:日志管理包含员工填写工作日志.领导对日志的查看。   ③信息管理:员工可以发布信息,领导可以对信息进行增删改查。   ④通知管理:领导可以发布通知,所有工作人员可以查看通知内容。   ⑤报表管理:对员工信息和重要日志的统计汇总。   3 系统实现及特色   (1)系统实现   功能实现上,不同员工负责各类信息的同步.如农业调研、农村经营、畜牧信息、农产信息、经济作物、市场信息等不同专栏。另外在任何情况下,消息都不应该丢失,当发送的消息到达中间件后,根据特定的规则处理消息并返回确认信息,只有收到确认消息后,该消息才能成功发送到中间件,Rabbitmq才会删除该消息,避免队列无限膨胀而引起应答机制性能下降。为了保证每次发送消息的唯一性,我们会比对发送过来的消息ID,如果值小于我们记录ID的最大值,说明这条消息在之前已经收到过,因此不会重复处

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档