一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于HTTP协议的中间件数据传输方法、装置、设备及存储介质与流程

2022-03-14 02:16:11 来源:中国专利 TAG:

一种基于http协议的中间件数据传输方法、装置、设备及存储介质
技术领域
1.本发明涉及互联网技术领域,尤其是涉及一种基于http协议的中间件数据传输方法、装置、设备及存储介质。


背景技术:

2.随着互联网的发展以及信息技术的不断更新,多系统交互越来越频繁,企业与企业之间的数据共享也越来越常见,因此在多个系统之间的数据传输就会导致各种各样的问题,其中最常见的是数据传输的速度及准确性,此外,数据在传输过程中也需受到管控。
3.web服务器通信一般基于http协议实现,通过浏览器提供用户交互界面,能够克服客户端软件可移植性差的缺点。然而当存在上游系统需要对接多个下游系统时,由于通信协议不兼容,下游系统可能无法直接与web服务器建立连接,需要通过中间件实现数据的转发,且多个下游系统不方便管理,需要多个定制化开发,一旦某个系统宕机,可能会影响整个系统的数据传输,无法保证数据的完整性。


技术实现要素:

4.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于http协议的中间件数据传输方法、装置、设备及存储介质。
5.本发明的目的可以通过以下技术方案来实现:
6.本发明一方面提供一种基于http协议的中间件数据传输方法,该方法基于spring框架实现,具体包括如下步骤:
7.读取数据库中的下游系统信息;
8.解析下游系统信息并将其加载至内存中;
9.基于http请求解析数据收发双方所发送的数据,并进行通信;
10.基于http请求实时监控数据收发双方的通信,若数据通信失败,则执行数据传输重发机制。
11.进一步地,解析下游系统信息并加载到内存中的具体步骤包括:
12.21)数据库读取下游系统信息,判断同一下游系统信息的数量是否仅为一个,若是,执行下一步,若否,不执行操作;
13.22)判断下游系统是否处于启用状态,若是,则执行下一步,若否,不执行操作;
14.23)遍历所有启用的下游系统信息,判断是否存在需要废弃的数据,若存在将其置为废弃状态,更新数据库,若不存在,执行下一步;
15.24)将已确认并已激活的数据,替换到内存中。具体内容为:
16.读取数据库中已确认的数据,新建一个实体,将遍历出来的新数据赋值于已确认的旧数据,并将其设置为需要废弃的数据,执行数据库添加操作;随后对得到的需要废弃数据,判断其是否符合数据收发双方约定的通信规范,若是,则将数据置为已确认状态,更新
数据库,并替换内存中的数据;若否,不执行操作。
17.进一步地,基于http请求解析数据收发双方所发送的数据的具体步骤包括:
18.31)读取内存,获取服务提供方包括ip、端口和路径在内的信息;
19.32)解析数据传输方向,跳转对应服务提供方的方法;
20.33)将发送的数据转换为json格式字符串,采用post方式,执行http请求发送至接收方。
21.进一步地,执行数据传输重发机制的具体步骤包括:
22.41)判断是否存在人工操作标识,若存在,不执行数据传输重发机制,否则执行下一步;
23.42)判断数据传输类型是否为异步,若是,则进入下一步,若否,不执行数据传输重发机制;
24.43)获取http请求状态码,读取数据库中定义的重试状态码,若两个状态码相互匹配,则执行下一步,若两个状态码不匹配,则不执行数据传输重发机制;
25.44)创建一个重试队列,将重试实体添加至队列中,开启一个新线程,每次从队列头部取出一个重试实体,重新执行http请求,执行发送,发送结束,队列置空,并将线程数减1。
26.本发明第二方面提供一种基于http协议的中间件数据传输装置,该装置包括:
27.数据读取模块,用于读取数据库中的下游系统信息;
28.数据加载模块,用于对读取的数据库中的下游系统信息进行解析,并将其加载至内存中;
29.数据判断模块,用于判断同一下游系统信息的数量是否仅有一个,若是则遍历所有启用的下游系统信息,并对于遍历所有启用的下游系统信息判断是否存在需要废弃的数据,对于存在的废弃的数据执行数据库添加操作;
30.数据添加模块,用于读取数据库中已确认的数据,并新建一个实体,将遍历出来的新数据赋值于已确认的旧数据,并将其设置为需要废弃的数据,执行数据库添加操作;
31.数据解析模块,用于将数据添加模块中得到的需要废弃数据,判断是否符合数据收发双方约定的通信规范,对于符合规范的数据,将其置为已确认状态,更新数据库,并替换内存中的数据;
32.数据传输模块,用于判断数据中包含的下游系统信息是否为数据解析模块中的加载到内存中的已确认数据,若是,则解析数据得到ip、端口、路径信息后执行数据传输;
33.数据监控模块,用于监控数据传输模块的数据传输状态,若数据通信失败,控制其重新执行数据传输。
34.本发明第三方面提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的基于http协议的中间件数据传输方法的步骤。
35.本发明另一方面还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的基于http协议的中间件数据传输方法的步骤。
36.相较于现有技术,本发明至少包括如下有益效果:
37.一、本发明拓展了web服务器通信,能够实现对通信数据的管理,有利于双方系统
的快速对接,上游系统只需下发下游系统的系统数据信息,便可对其进行统一管理,减少了上游系统对下游系统的定制化开发,提升了实施效率,减少了实施周期。
38.二、采用数据加载到内存中,有利于保证程序的稳定性,并显著提高了程序的性能。
39.三、采用重发机制,对于通信失败的数据,可及时处理失败的数据,能够有效避免由于某一系统被攻击而导致消息无法传输的情况,保证了消息传输的可靠性以及数据的完整性,减少了人工干预,节约了成本。
附图说明
40.图1为实施例中基于http协议的中间件数据传输方法的流程示意图;
41.图2为实施例中基于http协议的中间件数据传输装置的结构示意图;
42.图中标号所示:
43.101、数据读取模块,102、数据加载模块,103、数据判断模块,104、数据添加模块,105、数据解析模块,106、数据传输模块,107、数据监控模块。
具体实施方式
44.下面结合附图和具体实施例对本发明进行详细说明。显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
45.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
46.为更加清楚地对本发明内容进行说明,首先对以下名称进行解释:
47.下游系统信息:数据接收方的信息,例如公司代码,公司名,业务名等等,反之上游系统信息即为数据发送方的信息。
48.启用/禁用状态:下游中未启用的数据,例如:与某公司终止合作了,那就是禁用状态,反之就是启用状态。
49.需要废弃状态:下游系统信息中已启用未确认的数据,例如:准备不与某公司的某个业务合作了,但是还在谈,不确定,那这个公司的这个业务就是需要废弃状态。
50.废弃状态:下游系统信息中已启用已废弃的数据,例如:需要废弃状态的业务,确定以后不合作了,那这个公司的这个业务就是需要废弃状态。
51.已确认状态:下游系统信息中已启用已确认的数据,例如:正在长久持续合作的公司和业务。
52.本技术实施例提供一种基于http协议的中间件数据传输方法,该方法基于spring框架实现,该方法流程如图1所示,包括以下步骤:
53.步骤一、当本发明启动后读取数据库中的下游系统信息;
54.步骤二、解析下游系统信息加载到内存中,便于管理;具体步骤如下:
55.201)数据库读取下游系统信息,判断同一下游系统信息的数量是否仅有一个,若
是,执行下一步,若否,不执行操作;
56.202)判断下游系统是否处于启用状态,若是,执行下一步,若否,不执行操作;
57.203)遍历所有启用的下游系统信息,判断是否存在需要废弃的数据,如果存在将其置为废弃状态,更新数据库,如果不存在,执行下一步;
58.进一步地,可将不同数据类型进行不同的数据标记,例如,将已废弃的数据的确认标识设置为x,将已确认的数据的确认标识设置为y,未确认的确认标识设置为n。
59.204)读取数据库中已确认的数据,新建一个实体,将遍历出来的新数据赋值给已确认的老数据,并将其设置为需要废弃的数据,执行数据库添加操作,继续执行下一步。
60.205)将步骤204)中得到的需要废弃数据,判断是否符合数据收发双方约定的通信规范,若是,将数据置为已确认状态,更新数据库,并替换内存中的数据;若否,不执行操作。
61.步骤三、当有数据通过本发明传输时,判断数据中包含的下游系统信息是否为步骤二中的加载到内存中的已确认数据,若是,解析数据得到ip、端口、路径等信息,执行发送,若否,不进行传输。具体地:
62.301)读取内存,得到服务提供方的ip、端口、路径等信息;
63.302)解析数据传输方向,跳转对应服务提供方的方法;
64.303)将发送的数据转换为json格式字符串,采用post方式,执行http请求发送给接收方。
65.步骤四、实时监控步骤三中的通信状态,若数据通信失败,进入重发机制。具体步骤包括:
66.401)判断是否存在人工操作标识,若存在,不进入重发,不存在,进入下一步;
67.402)判断数据传输类型是否为异步,若是,进入下一步,若否,不进入重发;
68.403)获取http请求状态码,读取数据库中定义的重试状态码,若匹配,下一步,若不匹配,不执行重发;
69.404)创建一个重试队列,将重试实体添加到队列中,开启一个新线程,每次从队列头部取出一个重试实体,重新执行http请求,执行发送,发送结束,队列置空,线程数减1。
70.本实施例将上述方法流程应用至实际企业产品和服务的系统中,如电商平台业务系统、发电企业设备实时运行数据系统等。经统计,在未采用本发明方法的情况下,平均每1000吨业务在业务运营的各个环节平均共耗时2小时54分钟。采用本发明方法实施后平均每1000吨业务在业务运营的各个环节共耗时1.5分钟。即本发明实施后比发明实施前,平均每1000吨业务节约工作量2小时53分钟。此外,采用本发明方法实施后可节约工作量约d=(14840000/1000)*2.875=42665(小时),按每8小时每工作日,换算为人员工作量为d=21.7人年。按28万/人年的人工成本计算,本发明实施后,一年可节约人工成本f=e*d=608(万元)。另外,按照标准接口对接可以从定制化的一家2个月周期减少到2-4周时间,预计接口中心工作量和综合实施成本减少40%。可显著提升实施效率,减少实施周期。
71.本技术实施例还提供一种基于http协议的中间件数据传输装置,其结构如图2所示,包括:
72.数据读取模块101、数据加载模块102、数据判断模块103、数据传输模块104、数据解析模块105以及数据传输模块106;其中,数据读取模块101与数据加载模块102相连,数据加载模块102与数据判断模块103相连,数据判断模块103与数据添加模块104相连,数据添
加模块104与数据解析模块105相连,数据解析模块105与数据传输模块106相连。
73.数据读取模块101用于在启动后读取数据库中的下游系统信息;
74.数据加载模块102用于对读取的数据库中的下游系统信息进行解析,并将其加载到内存中;
75.数据判断模块103用于判断同一下游系统信息的数量是否仅有一个,若是则遍历所有启用的下游系统信息;并对于遍历所有启用的下游系统信息判断是否存在需要废弃的数据,对于存在的废弃的数据执行数据库添加操作;
76.数据添加模块104用于读取数据库中已确认的数据,并新建一个实体,将遍历出来的新数据赋值给已确认的老数据,并将其设置为需要废弃的数据,执行数据库添加操作;
77.数据解析模块105用于将数据添加模块104中得到的需要废弃数据,判断是否符合数据收发双方约定的通信规范,对于符合规范的数据,将数据置为已确认状态,更新数据库,并替换内存中的数据;
78.数据传输模块106用于判断数据中包含的下游系统信息是否为数据解析模块105中的加载到内存中的已确认数据,若是,则解析数据得到ip,端口,路径等信息后执行数据传输。
79.数据监控模块107用于监控数据传输模块106的数据传输状态,若数据通信失败,控制其重新执行数据传输。
80.本技术实施例还提供了一种计算机设备,该计算机设备可以是服务器,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于http协议的中间件数据传输方法。
81.本技术实施例还公开了一种计算机可读存储介质,所述存储介质可被处理器读写,所述存储器存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例中所述的基于http协议的中间件数据传输方法。
82.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的工作人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献