消息队列在分布式系统数据中的应用与分析

来源 :商场现代化 | 被引量 : 0次 | 上传用户:akgmtgdt
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要]队列的主要目的是提供路由并保证消息的传递,如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功地传递它。消息队列使应用程序的集成和在不可靠但节省费用的网络上开发可靠的应用程序变得更加容易。本文主要探讨消息队列在分布式系统数据中的应用与分析。
  [关键词]消息队列 分布式系统 数据
  消息队列是一种进程间通讯机制,本文对单机消息队列进行了有效的扩展,使其分布在网络上作为一种基础中间件平台为分布式计算提供服务。随着各种计算机标准的出现和技术的进步,中间件技术作为软件行业崛起的一个崭新分支,正在全球范围内迅猛发展,缺少一个开放的标准是消息中间件不能被大量使用的重要障碍。中间件技术的广泛运用是在最近10年。消息中间件是中间件范畴中发展最快的中间件类型之一。
  一、消息队列方法的基本设计
  消息队列是操作系统的进程之间用于通信的一种机制,两个或多个进程间通过访问共同的消息队列完成消息的交换。将消息队列的概念扩展到位于分布式环境下不同站点上应用程序间的通信,由消息队列机制实现网络上的可靠消息传送,其中涉及的消息队列有消息接收队列、更新发送表、消息发送管理器和消息接收管理器。
  当应用程序在处理数据库修改或更新事务时,修改更新了本地服务器的数据库中所保存的数据,同时应用程序将更新信息和更新所执行的SQL(StructuredQueryLanguage)语句以消息的形式写入到更新发送表,更新发送表的内容和本次本地服务器数据库更新的内容一致。根据服务器软件的设定,当服务器发起与其他服务器的数据一致操作时,触发消息发送管理器将更新发送表的内容封装成Message消息发送给其他服务器。对本地而言,若无异常,消息将送到目的地址所指示的远端站点的消息接收队列中。同时接送端,一个后台消息接收管理器一直监视着消息接收队列。当检测到有消息到达时,开始读取消息,并根据读到的消息内容恢复成相应的SQL语句,根据SQL语句对本地数据库执行所描述的更新事务。如果更新成功,则处理结束,并返回“更新成功”,否则返回“更新失败”。此时发送端的消息发送管理器一直监视接收队列,根据收到的消息类型进行相应的操作,若各服务器更新成功,则将该更新发送表内容删除,若失败,则周期性地重发该消息。
  二、分布式消息队列操作
  分布式消息队列的写操作就是向一个已有的消息队列中发送数据的过程。写消息之前,用户进程应获得其消息队列描述符msqid的值,然后由msgsnd_d()系统调用将数据写入由msqid值指定的消息队列。具体过程如下:用户进程调用msgsnd_d()时,系统调用msgsnd_d()首先向本地的守护进程发送“写数据”的请求信息,在请求信息中包含msgsnd_d()调用的参数msqid、msgflg和msgp,然后等待守护进程返回应答信息,收到应答信息后把结果返回给用户进程,若是错误信息,还要设置相应的错误信号errno。守护进程收到“写数据”的请求后也派生出一个子进程处理。从请求信息中分离出参数msqid、msgflg和要写入的信息,然后在key值表中查找msqid,若不存在则将错误信息返回给用户进程,若存在则返回其key值表中的key值及所在节点的IP值,然后守护进程根据得到的IP来判断消息队列在本地还是在异地。若在本地则调用msgsnd()向本地消息队列中写入数据并将结果返回给用户进程;若在异地则根据IP向相应的节点发送包括key、msgflg和要写入信息的“写数据”请求,在收到应答信息后将结果返回给用户进程。
  三、消息队列在分布式系统数据中的应用
  分布式数据库系统中的每个网络节点上,在数据一致性功能模块下,都由5个功能模块构成:发送更新消息,接收更新消息,消息发送管理,消息接收管理和更新消息处理。
  1.发送更新消息
  发送更新消息的功能是向整个网络所有的服务器发送更新消息数据,由此使其他所有的服务器根据该消息的内容实现与本服务器间的数据一致。发送更新消息通过接收本地服务器所执行的SQL语句中对服务器中数据做出了修改的语句,接收数据修改信息,并将接收的数据修改信息封装成消息的格式,存储在更新发送表中,在收到发送命令后,发送给其他服务器,实现各服务器与本服务器的数据同步。
  当发送更新消息收到数据库执行SQL发来的数据修改信息时,先将数据修改信息封装成消息中的数据信息格式。消息发送命令被触发后,在消息发送管理器的控制下,将消息以组播的形式发送给其他所有在线服务的业务服务器,实现正常情况下的多服务器间的数据同步。
  2.接收更新消息
  接收更新消息的功能是实现接收所有数据同步信息(业务层发来的业务数据、其他服务器发来的数据同步消息),并根据收到消息的类型对数据进行相应处理。当收到的数据是业务服务器发送来的业务数据时,对数据加以解析后将解析的数据存储到相应的缓存区域。当接收到的数据是其他服务器发来的数据同步信息时,对同步数据加以解析,解析消息中的数据信息部分,获取一次业务的所有数据操作并对本服务器数据库中的数据执行相应的SQL语句,进行相应的操作,从而实现本服务器与消息发送端服务器之间的数据同步。从而实现了在正常运转情况下的数据同步操作。
  3.消息发送管理
  每个服务器在执行对数据库中的数据进行修改操作的SQL语句后,消息发送管理模块对更新发布表执行插入操作,添加一条与该条SQL语句相应的消息。服务器触发进行数据一致过程后,要求与其他服务器进行数据一致,服务器发送数据一致命令给消息发送管理模块,消息发送管理模块被触发后将消息信息发送表的内容取出封装成用于传送消息,并根据当前服务器的拓扑信息将消息发送给其他服务器。当消息发送管理器模块接收到消息收管理模块发来的重新发送请求时,将消息信息发送表中的数据重新发送给数据同步出错的服务器。
  4.更新消息处理
  服务器的接收更新消息模块收到新消息后,消息接收管理模块要求接收更新消息模块将该消息交给更新消息处理模块。更新消息处理模块接收到消息后,按照消息编码过程的反过程解析消息。将消息中的数据信息解析为相应的SQL语句,并根据这一SQL语句对服务器的数据进行更新。如果更新成功则向发送方返回数据更新成功并将本次更新的数据写入数据交换表,否则返回发送失败。
  参考文献:
  [1]黄姝娟,杜承烈,尤涛.中间件技术实时性能的比较[J].计算机工程,2009,35(11):32-37.
  [2]徐高潮,胡亮,鞠九宾.分布式计算系统[M].北京:高等教育出版社,2004:23-36.
  [3]勒敏,刘建辉.分布式数据库系统数据一致性维护方法[J].科技广场,2008 (3):31-33.
其他文献
基金项目:本文获得北京市大学生科学研究与创业行动计划课题、北京市学科与研究生教育专项基金和北方工业大学2011年度校科研基金经费资助  [摘 要]贸易术语选择是国际贸易谈判中的核心问题之一。本文从市场结构因素对谈判的影响出发,对出口谈判双方的利益博弈进行了规范分析,并采用仿真实验和问卷调查的方法,对大宗商品出口谈判中的术语选择策略进行了探索和验证。研究表明,在大宗商品贸易中,买方常常拥有较集
期刊
[摘 要]企业文化是一个企业发展的灵魂。本文通过对福建圣农集团的考察调研,初步总结出该企业在成长发展过程中成功的四个重要的企业文化核心因素——生态、天则、天责和人本,这为推动该企业的持续发展中起了重大的作用。  [关键词]企业文化 生态 天责 天职 以人为本  改革开放三十多年以来,随着国家大政方针的扶持,特别是在构建社会主义和谐社会的大背景下,多种所有制经济形式兼容并包,民营企业得到了空前的发展
期刊
[摘 要]产业链上下游企业双方在原材料、零部件、产成品生产方面均进行创新,并实现合作创新不仅可以提高产业链的整体收益,而且还能形成双赢的局面。本文以核酸诊断产业链上下游企业合作研发为例,进一步检验交叉持股为企业带来的合作创新动力。  [关键词]合作创新 交叉持股 合作创新动力  一、绪论  在激烈的竞争环境下,产品和技术的生命周期越来越短,企业间的创新合作活动被认为是复杂的研发和产业组织创新过程的
期刊
[摘 要]从利益相关者的角度分析了区域旅游合作面临的一些问题和挑战,主要表现为发展各自孤立、合作力度不够紧密、呈现分散局面,以致于没有形成规则合理统一的区域旅游一体化市场;以旅游资源、形象品牌、市场定位、各地政策间的冲突为例,论述了区域旅游合作中各利益相关主体间的利益冲突,对于各利益相关主体间的冲突根源做出了进行了简要的研究和分析。提出了各地政府间协调机制、政策规章协调机制、行业组织协调机制、企业
期刊
[摘 要]近年来中国电力“走出去”的发展带动了电力设备业的出口,中国电力设备企业 “走出去”的形势良好。随着全球经济放缓与国内产能过剩加剧,国内火电及新能源发电等行业整体不景气,宏观整体宏观经济下行,国内发电设备需求不足,使得我国电力设备企业面临着前所未有的挑战,电力设备“走出去”是大势所趋。本文通过分析我国当前电力设备企业走出去现状,提出我国电力设备企业走出去的发展态势,剖析影响我国电力设备企业
期刊
出于经济和政治的双重目的,近两年美国频繁向人民币发难,迫使其升值,中国的汇率问题被推上了风口浪尖。本文就是基于购买力平价理论就这一问题进行探讨.  一、汇率决定理论简述  汇率决定理论是国际金融理论的核心之一,随着经济背景和经济学基础理论的演变而而产生了不同的理论,主要有:国际收支理论、资产市场分析理论、非有效市场理论、现代均衡汇率理论、购买力平价理论。尽管汇率决定模型众多,购买力平价理论从它被提
期刊
[摘 要]中小企业融资困难问题由来已久,成为制约中小企业发展的一个重要因素。从2011年浙江温州老板集体“跑路”事件发生后,各金融机构都先后研发了一系列针对中小企业的融资产品,并放低其融资的门槛;政府部门也出台了诸多财政措施和货币措施,但效果并不明显。笔者认为银行等金融机构的新融资产品不能从根本上缓解中小企业融资困境的原因在于融资产品的变化并不等同于融资风险的变化,各银行最后为了降低其放款风险依旧
期刊
[摘要]在信息技术腾飞的今天,如何将这一技术应用在旅游业的发展中呢?本文以渝东南地区旅游资源为例,探讨信息技术在旅游形象传播中的应用,以提高渝东南地区旅游资源的知名度,促该区的旅游业迅速发展。  [关键词]旅游形象;信息技术;传播;旅游资源  一、信息技术视角下的旅游形象  自从人们的生活进入信息化时代后,中国乃至世界的旅游业都发生了翻天覆地的变化,如何使一个旅游景区成功的运行?这不但需要该旅游景
期刊
山西省教育厅2012年高等学校教学改革项目:定单培养教育模式的理论与实践研究?——以山西职业技术学院酒店管理专业为例(编号:jg2012067)  [摘 要]高职院校酒店管理专业课程体系的构建工作直接关系到毕业生的就业问题,开展“订单式”酒店管理人才培养模式是打造高技能、高素质大学生和促进毕业生就业的重要途径。本文通过深入了解“订单式”酒店管理人才培养模式的内涵,提出针对该模式的系列方案,通过实施
期刊
[摘 要]入侵检测识别是当今网络安全研究的热点。近年来,入侵检测系统的研究在智能化和分布式两个方向有一定的发展,取得了很多成果,但依然存在一些问题。本文主要探讨网络入侵智能识别的相关技术与应用。  [关键词]网络入侵 智能识别 技术  近年来,互联网在国际上得到了飞速的发展,其重要性也与日俱增,但同时网络本身的安全性问题也就显得更为重要。网络安全的一个主要威胁就是通过网络对信息系统的入侵。  一、
期刊