分布式数据库系统的远程快速调用方法

文档序号:6597161阅读:185来源:国知局
专利名称:分布式数据库系统的远程快速调用方法
技术领域
本发明涉及一种用于分布式数据库系统的跨节点远程快速调用方法,属于计算机技术领域。
背景技术
数据库集群的节点间通讯,在物理层和数据链路层之上的是传输协议层,应用层的通讯与传输层的交互层次一直是比较含混的,方法流程各种各样。效果功能参差不齐。云数据库的运行过程中,许多操作都不是靠一个节点在本地完成的,需要多个节点协同完成任务。这时许多短操作就需要快速的通过远程调用,在其他节点上执行操作,实现多机并发完成任务。基于此,我们发明了一种远程快速调用方法用于分布式数据库系统的远程快速调用,实现了多种简短操作通过远程手段快速调用的目的。

发明内容
本发明是为了解决远程短操作的处理,而实现的远程快速调用中间件。本发明的目的是通过以下技术方案来实现的:RFC远程快速调用方法,用于数据库集群中短任务的跨机执行操作。本发明主 要的功能模块有远程快速调用模块,RFC请求处理模块,远程执行反馈模块。远程快速调用模块包括快速调用发起单元和调用返回接收单元,RFC请求处理模块包括请求接收单元和请求处理单元,远程执行反馈模块包括远程执行单元和结果反馈单元,请求处理单元与远程执行单元均按类型对不同的RFC调用进行相应的处理。RFC远程快速调用方法,它包括以下步骤:
51:初始化远程调用环境及所需资源,启动集群节点的远程快速调用模块,RFC请求处理模块,远程执行反馈模块;
52:发起调用:调用发起模块准备BUFF填写信息并将参数有序存放于参数段,选择一可用通道将消息包发送至目标节点并悬挂自身等待反馈。S3:接收调用:RFC调用目标节点的请求接收单元从RFC请求接收队列中取得RFC请求任务,根据调用号接收处理传递来的参数。S4:处理请求:RFC请求处理模块的请求处理单元将接收的RFC请求按照类型将RFC请求以及相应的参数传递给对应的处理函数。S5:执行:任务执行者在执行节点本地执行远程请求者发来RFC任务请求。S6:反馈:任务执行者将任务请求执行结果反馈给行远程请求发起者
S7:接收反馈:调用发起者收到对方回复信号后解除自身悬挂,接收远程的执行结果,并根据不同的结果作相应处理。在RFC调用发起过程中调用发起模块包括以下步骤:
S21:调用发起模块准备数据缓存BUFF待用,填写基本信息包括己方和对方节点号,RFC调用发起号等。
S22:调用发起模块将参数有序放入BUFF参数段。S23:调用发起模块根据RFC使用类型发起RFC调用,将BUFF数据传输至目标节点。S24:调用发起者悬挂自身等待远程执行后反馈结果。根据RFC调用的运行结果不同接收反馈子模块接收到的处理结果有以下几种情况:
a返回成功。b超时无反馈,检测到远程节点死亡则报错。c收到反馈结果但是有错,根据返回的错误号作相应的错误处理。本发明的有益效果是:
在资源不在本地的情况下,跨节点执行调用,无须传输资源到本地,节约网络开销。执行RFC调用速度快,无需等待资源,执行耗时短,传输命令与返回耗时短。不同的RFC调用可并发执行,效率高。RFC结构化调用方便易用。
具体实施例方式下面进一步说明本发明的技术方案,但本发明所保护的内容不局限于以下所述。RFC远程快速调用方法,包括远程快速调用模块,RFC请求处理模块,远程执行反馈模块。远程快速调用模块包括快速调用发起单元和调用返回接收单元,RFC请求处理模块包括请求接收单元和请求处理单元,远程执行反馈模块包括远程执行单元和结果反馈单元,请求处理单元与远程执行单元均按类型对不同的RFC调用进行相应的处理。RFC远程快速调用方法,它包括以下步骤:
51:初始化远程调用环境及所需资源,启动集群节点的远程快速调用模块,RFC请求处理模块,远程执行反馈模块;
52:发起调用:调用发起模块准备BUFF填写信息并将参数有序存放于参数段,选择一可用通道将消息包发送至目标节点并悬挂自身等待反馈。S3:接收调用:RFC调用目标节点的请求接收单元从RFC请求接收队列中取得RFC请求任务,根据调用号接收处理传递来的参数。S4: 处理请求:RFC请求处理模块的请求处理单元将接收的RFC请求按照类型将RFC请求以及相应的参数传递给对应的处理函数。S5:执行:任务执行者在执行节点本地执行远程请求者发来RFC任务请求。S6:反馈:任务执行者将任务请求执行结果反馈给行远程请求发起者
S7:接收反馈:调用发起者收到对方回复信号后解除自身悬挂,接收远程的执行结果,并根据不同的结果作相应处理。在RFC调用发起过程中调用发起模块包括以下步骤:
S21:调用发起模块准备数据缓存BUFF待用,填写基本信息包括己方和对方节点号,RFC调用发起号等。S22:调用发起模块将参数有序放入BUFF参数段。S23:调用发起模块根据RFC使用类型发起RFC调用,将BUFF数据传输至目标节点。
S24:调用发起者悬挂自身等待远程执行后反馈结果。根据RFC调用的运行结果不同接收反馈子模块接收到的处理结果有以下几种情况:
a返回成功。b超时无反馈,检测到远程节点死亡则报错。c收到反馈结果但 是有错,根据返回的错误号作相应的错误处理。
权利要求
1.RFC远程快速调用方法,用于数据库集群中短任务的跨机执行操作,其特征在于他包括远程快速调用模块,RFC请求处理模块,远程执行反馈模块;远程快速调用模块包括快速调用发起单元和调用返回接收单元,RFC请求处理模块包括请求接收单元和请求处理单元,远程执行反馈模块包括远程执行单元和结果反馈单元,请求处理单元与远程执行单元均按类型对不同的RFC调用进行相应的处理。
2.一种如权利要求1所述的RFC远程快速调用方法法其特征在于其它包括以下步骤: 51:初始化远程调用环境及所需资源,启动集群节点的远程快速调用模块,RFC请求处理模块,远程执行反馈模块; 52:发起调用:调用发起模块准备BUFF填写信息并将参数有序存放于参数段,选择一可用通道将消息包发送至目标节点并悬挂自身等待反馈; 53:接收调用:RFC调用目标节点的请求接收单元从RFC请求接收队列中取得RFC请求任务,根据调用号接收处理传递来的参数; 54:处理请求:RFC请求处理模块的请求处理单元将接收的RFC请求按照类型将RFC请求以及相应的参数传递给对应的处理函数; 55:执行:任务执行者在执行节点本地执行远程请求者发来RFC任务请求; 56:反馈:任务执行者将任务请求执行结果反馈给行远程请求发起者; 57:接收反馈:调用发起者收到对方回复信号后解除自身悬挂,接收远程的执行结果,并根据不同的结果作相应处理。
3.—种如权利要求1所述 的RFC远程快速调用方法,其特征在于:调用发起模块和远程执行反馈模块传递的数据包均为单包,网络流量小,传输效率高。
4.一种如权利要求2所述的RFC远程快速调用方法,其特征在于:所述的步骤S2调用发起模块包括以下步骤: 521:调用发起模块准备数据缓存BUFF待用,填写基本信息包括己方和对方节点号,RFC调用发起号等; 522:调用发起模块将参数有序放入BUFF参数段; 523:调用发起模块根据RFC使用类型发起RFC调用,将BUFF数据传输至目标节点; 524:调用发起者悬挂自身等待远程执行后反馈结果。
5.一种如权利要求2所述的RFC远程快速调用方法,其特征在于:所述的步骤S7接收反馈子模块接收到的处理结果有以下几种情况: a返回成功; b超时无反馈,检测到远程节点死亡则报错; c收到反馈结果但是有错,根据返回的错误号作相应的错误处理。
全文摘要
本发明公开了一种用于分布式数据库系统的远程快速调用方法(以下简称RFC-Remotefastcall),包括远程快速调用发起模块,RFC请求接收处理模块,远程被调执行反馈模块。它包括以下步骤初始化,RFC调用方发起远程快速调用请求,根据调用类型将命令以参数形式传递到被调用方,RFC被调用方接收请求,按调用类型处理参数执行请求,反馈执行结果,调用方接收执行结果,异常处理等步骤。本发明底层采用非面向连接数据传输模式,快速调用,跨机执行,数据传输量小单包去单包回,为不同类型的任务根据自身特点设定不同的参数结构调用方便灵活。
文档编号G06F17/30GK103246741SQ201310185488
公开日2013年8月14日 申请日期2013年5月20日 优先权日2013年5月20日
发明者况忠强, 马正红 申请人:成都市欧冠信息技术有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1