一种异步通信下的路由方法及系统技术方案

技术编号:34496703 阅读:14 留言:0更新日期:2022-08-10 09:16
本发明专利技术提出了一种异步通信下的路由方法,通过构建一个exchange服务,通过exchange服务对上行请求进行接收并将下行报文匹配到对应的服务中。本发明专利技术还提出一种异步通信下的路由系统,开发人员在各自的开发环境下,可以各自请求到下行报文并精准返回自己的本机服务,有效避免了异步通信下多人协作开发时下行报文被其他开发人员接收的问题;同时,在测试过程中,测试人员的测试请求下行报文也可以精准返回上行请求所发出的服务,将开发环境与测试环境进行了屏蔽,有效避免当第三方对接环境不匹配时,不同环境的数据相互干扰的问题。不同环境的数据相互干扰的问题。不同环境的数据相互干扰的问题。

【技术实现步骤摘要】
一种异步通信下的路由方法及系统


[0001]本专利技术涉及网络通信
,特别是涉及一种异步通信下的路由方法及系统。

技术介绍

[0002]现有的软件无论是开发、测试还是应用环境都越来越多,而在需要与第三方软件对接时经常出现环境无法与开发环境相匹配的情况,如一方有开发、测试、预发、生产4个环境,而对接方只有开发和生产2个环境,由此会遇到以下问题:1、开发团队在开发过程中,由于目前跟第三方采取的都是异步通信,开发人员调试请求的下行会被其他开发人员接收到,达不到调试的效果;2、当软件开发完成进行提测后,测试环境依然接的是对接方的开发环境,此时原始开发环境下的一些并行的项目还需要在开发环境下进行开发,会出现发送方的开发环境、测试环境均于对接方的开发环境相连的情况,在实际操作中会出现开发和测试相互干扰,严重影响开发效率和测试效果。
[0003]现有技术公开了一种多环境多平台嵌入式系统的自动化测试方法,其通过启动多个分别与对应测试设备已经建立通信的测试节点的方式,根据待测试设备的运行系统选择对应的编译方式生成对应的测试用例执行测试,并返回测试结果,可以提高软件在多平台多环境的嵌入式设备上的测试效率,但并无法解决异步通信下多人协作开发时下行报文被其他开发人员接收的问题,也无法解决当第三方对接环境不匹配时,不同环境的数据相互干扰的问题。

技术实现思路

[0004]本专利技术为了解决以上至少一种技术缺陷,提供一种异步通信下的路由方法及系统,解决了异步通信下多人协作开发时下行报文被其他开发人员接收的问题,同时也解决了当第三方对接环境不匹配时,不同环境的数据相互干扰的问题。
[0005]为解决上述技术问题,本专利技术的技术方案如下:一种异步通信下的路由方法,包括接入过程、执行过程和还原过程;其中,接入过程包括:A1:搭建一个仅在开发测试期间使用的exchange服务,该exchange服务与若干个开发环境、测试环境相连;A2:接入exchange服务,将开发环境或测试环境的上行请求由直接发往第三方服务改为发往exchange服务;同时,将第三方服务返回的下行报文由直接发往网关改为发往exchange服务;执行过程包括:B1:上行请求至exchange服务时,exchange服务解析上行请求,记录上行请求流水号以及请求IP后,exchange服务将上行请求转发至第三方服务;B2:第三方服务执行上行请求并返回下行报文到exchange服务;
B3:exchange服务解析下行报文,获取下行报文中的上行请求流水号;B4:exchange服务通过上行请求流水号查询对应的请求IP,并将下行报文发送至查询到的请求IP;还原过程为:断开exchange服务,将开发环境或测试环境的上行请求改为直接发往第三方服务,将第三方服务返回的下行报文直接发往网关,再由网关下行随机分配给开发环境或测试环境。
[0006]上述方案在执行过程中,开发人员在各自的开发环境下,可以各自请求到下行报文并精准返回自己的本机服务,有效避免了异步通信下多人协作开发时下行报文被其他开发人员接收的问题;同时,在测试过程中,测试人员的测试请求下行报文也可以精准返回上行请求所发出的服务,将开发环境与测试环境进行了屏蔽,有效避免当第三方对接环境不匹配时,不同环境的数据相互干扰的问题。
[0007]其中,所述上行请求包括上行报文头和上行报文体,上行报文头包括业务类型和上行请求流水号;其中:所述业务类型用于记载请求策略指令,由第三方服务执行;所述上行请求流水号用于记载上行请求的序列号;所述上行报文体用于存储请求策略指令下的相关数据;在所述B3中,第三方服务将基于请求策略指令下的相关数据执行请求策略指令,返回控制策略指令;同时,将控制策略指令和上行请求流水号打包生成下行报文。
[0008]其中,所述下行报文包括下行报文头和下行报文体,下行报文头包括控制策略指令和上行请求流水号;其中:所述控制策略指令用于控制exchange服务执行相应的转发操作;所述上行请求流水号用于匹配获取对应的请求IP;所述下行报文体用于存储控制策略指令下的相关数据;在所述B4中,exchange服务根据上行请求流水号用于匹配获取对应的请求IP,并根据控制策略指令将下行报文体发送至查询到的请求IP。
[0009]其中,在所述B4中,exchange服务根据控制策略指令仅执行点对点转发、群发还是部分转发,不对下行报文体中的数据进行修改,保证对整个业务流程没影响。
[0010]其中,所述exchange服务基于springboot框架搭建,其本质为维护一个列表Msgip

IP;当其收到上行请求时,将请求IP和上行请求流水号Msgip取出;将上行请求流水号Msgip和请求IP分别以Key、Value存入exchange服务的缓存redis中;当其收到下行报文时,获取下行报文中的上行请求流水号Msgip,并以Msgip为Key在redis中查询到对应的Value,即请求IP,再将下行报文发送至查询到的请求IP。
[0011]本方案还提供一种异步通信下的路由系统,用于执行一种异步通信下的路由方法,其包括若干个开发环境、测试环境、第三方服务环境、服务搭建模块、服务接入模块、服务执行模块和服务断开模块;其中:所述服务搭建模块用于搭建一个仅在开发测试期间使用的exchange服务,该exchange服务分别与若干个开发环境、测试环境相连,同时连接第三方服务环境;所述开发环境、测试环境用于发出上行请求;所述第三方服务环境用于执行上行请求并返回下行报文到exchange服务;所述服务接入模块用于接入exchange服务,将开发环境或测试环境的上行请求由直接发往第三方服务改为发往exchange服务;同时,将第三方服务返回的下行报文由直接发往网关改为发往exchange服务;所述服务执行模块用于执行exchange服务,
当上行请求到达exchange服务时,exchange服务解析上行请求,记录上行请求流水号以及请求IP后,将上行请求转发至第三方服务环境;当下行报文到达exchange服务时,exchange服务解析下行报文,获取下行报文中的上行请求流水号并通过上行请求流水号查询对应的请求IP,将下行报文发送至查询到的请求IP;所述服务断开模块用于断开exchange服务,将开发环境或测试环境的上行请求改为直接发往第三方服务,将第三方服务返回的下行报文直接发往网关,再由网关下行随机分配给开发环境或测试环境。
[0012]其中,所述上行请求包括上行报文头和上行报文体,上行报文头包括业务类型和上行请求流水号;其中:所述业务类型用于记载请求策略指令,由第三方服务环境执行;所述上行请求流水号用于记载上行请求的序列号;所述上行报文体用于存储请求策略指令下的相关数据;所述第三方服务环境基于请求策略指令下的相关数据执行请求策略指令,返回控制策略指令;同时,将控制策略指令和上行请求流水号打包生成下行报文。
[0013]其中,所述下行报文包括下行报文头和下行报文体,下行报文头本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种异步通信下的路由方法,其特征在于,包括接入过程、执行过程和还原过程;其中,接入过程包括:A1:搭建一个仅在开发测试期间使用的exchange服务,该exchange服务与若干个开发环境、测试环境相连;A2:接入exchange服务,将开发环境或测试环境的上行请求由直接发往第三方服务改为发往exchange服务;同时,将第三方服务返回的下行报文由直接发往网关改为发往exchange服务;执行过程包括:B1:上行请求至exchange服务时,exchange服务解析上行请求,记录上行请求流水号以及请求IP后,exchange服务将上行请求转发至第三方服务;B2:第三方服务执行上行请求并返回下行报文到exchange服务;B3:exchange服务解析下行报文,获取下行报文中的上行请求流水号;B4:exchange服务通过上行请求流水号查询对应的请求IP,并将下行报文发送至查询到的请求IP;还原过程为:断开exchange服务,将开发环境或测试环境的上行请求改为直接发往第三方服务,将第三方服务返回的下行报文直接发往网关,再由网关下行随机分配给开发环境或测试环境。2.根据权利要求1所述的一种异步通信下的路由方法,其特征在于,所述上行请求包括上行报文头和上行报文体,上行报文头包括业务类型和上行请求流水号;其中:所述业务类型用于记载请求策略指令,由第三方服务执行;所述上行请求流水号用于记载上行请求的序列号;所述上行报文体用于存储请求策略指令下的相关数据;在所述B3中,第三方服务将基于请求策略指令下的相关数据执行请求策略指令,返回控制策略指令;同时,将控制策略指令和上行请求流水号打包生成下行报文。3.根据权利要求2所述的一种异步通信下的路由方法,其特征在于,所述下行报文包括下行报文头和下行报文体,下行报文头包括控制策略指令和上行请求流水号;其中:所述控制策略指令用于控制exchange服务执行相应的转发操作;所述上行请求流水号用于匹配获取对应的请求IP;所述下行报文体用于存储控制策略指令下的相关数据;在所述B4中,exchange服务根据上行请求流水号用于匹配获取对应的请求IP,并根据控制策略指令将下行报文体发送至查询到的请求IP。4.根据权利要求3所述的一种异步通信下的路由方法,其特征在于,在所述B4中,exchange服务根据控制策略指令仅执行点对点转发、群发还是部分转发,不对下行报文体中的数据进行修改,保证对整个业务流程没影响。5.根据权利要求1~4任一项所述的一种异步通信下的路由方法,其特征在于,所述exchange服务基于springboot框架搭建,其本质为维护一个列表Msgip

IP;当其收到上行请求时,将请求IP和上行请求流水号Msgip取出;将上行请求流水号Msgip和请求IP分别以Key、Value存入exchange服务的缓存redis中;当其收到下行报文时,获取下行报文中的上行请求流水号Msgip,并以Msgip为Key在redis中查询到对应的Value,即请求IP,再将下行报文发送至查询到的请求IP。6.一种异步通信下的路由系统,包括若干个开发环境、测试环境和第三方服务环境;其
特征在于,还包括服务搭建模块、服务接入模块、服务执行模块和服务断开模块...

【专利技术属性】
技术研发人员:钟鸿敏容绍俊陈昕何勇孔彪
申请(专利权)人:简单汇信息科技广州有限公司
类型:发明
国别省市:

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

1