CN115118757A - 网络远程调用方法、装置、计算机设备及存储介质 - Google Patents
网络远程调用方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN115118757A CN115118757A CN202210729469.3A CN202210729469A CN115118757A CN 115118757 A CN115118757 A CN 115118757A CN 202210729469 A CN202210729469 A CN 202210729469A CN 115118757 A CN115118757 A CN 115118757A
- Authority
- CN
- China
- Prior art keywords
- request
- file
- link
- response
- sending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000004044 response Effects 0.000 claims abstract description 125
- 230000005540 biological transmission Effects 0.000 claims abstract description 74
- 238000012545 processing Methods 0.000 claims abstract description 30
- 238000012544 monitoring process Methods 0.000 claims abstract description 10
- 238000004590 computer program Methods 0.000 claims description 21
- 230000007246 mechanism Effects 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 claims description 2
- 230000001360 synchronised effect Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 11
- 239000008186 active pharmaceutical agent Substances 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000002955 isolation Methods 0.000 description 4
- 230000006854 communication Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000008595 infiltration Effects 0.000 description 1
- 238000001764 infiltration Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了网络远程调用方法、装置、计算机设备及存储介质。所述方法包括:获取业务请求;根据所述业务请求组装请求头以及请求体,以得到请求内容;对所述请求内容进行序列化,以得到请求文件;获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路监听接收链路,以判断所述接收链路是否有响应文件;若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。通过实施本发明实施例的方法可实现提高内外网远程调用的效率,降低成本,可实现自动同步调用,不易出错。
Description
技术领域
本发明涉及计算机,更具体地说是指网络远程调用方法、装置、计算机设备及存储介质。
背景技术
在对信息安全,数据安全有极高的要求的某些行业中,为了杜绝网络中渗透、攻击,会选择自建一套与公网完全物理隔离的一套网络***。
在现有技术中,隔离网络需要与外部网络进行数据交换的时候,采用相对原始的光盘刻录方式,当前的传输方式存在以下缺点,一是传输效率低下,数据的写入和读取都是通过光盘作为暂存介质;二是人力成本高,无论传输什么信息都需要人工进行干涉、完全依赖人工;三是无法实现内外网两个***的自动同步调用,只能通过人工数据导入导出的方式,进行两个***的数据交互,四是人为干涉容易出现失误。
因此,有必要设计一种新的方法,实现提高内外网远程调用的效率,降低成本,可实现自动同步调用,不易出错。
发明内容
本发明的目的在于克服现有技术的缺陷,提供网络远程调用方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:网络远程调用方法,包括:
获取业务请求;
根据所述业务请求组装请求头以及请求体,以得到请求内容;
对所述请求内容进行序列化,以得到请求文件;
获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路;
监听接收链路,以判断所述接收链路是否有响应文件;
若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
其进一步技术方案为:所述业务请求是通过声明式的抽象API进行远程调用形成的。
其进一步技术方案为:所述根据所述业务请求组装请求头以及请求体,以得到请求内容,包括:
通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;
将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
其进一步技术方案为:所述对所述请求内容进行序列化,以得到请求文件,包括:
根据面对对象语言的多态性以及不同的传输设备调用对应设备的数据序列化方式将所述请求内容序列化成对应的传输单位,以得到请求文件。
其进一步技术方案为:所述获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路,包括:
获取当前链路中可用的发送链路;
利用可用的发送链路发送所述请求文件至内网,当所述内网监听到传输设备目录存在请求文件时,内网将所述请求文件解析成请求头以及请求体,并将所述请求体解析成请求参数,利用请求参数执行业务逻辑,并将执行的结果序列化成响应内容,再次序列化为响应文件,并将响应文件发送至接收链路。
其进一步技术方案为:所述对所述响应文件进行处理,以得到返回对象,包括:
对所述响应文件进行反序列化处理,以得到响应头以及响应体;
解析所述响应体,以得到返回对象。
本发明还提供了网络远程调用装置,包括:
请求获取单元,用于获取业务请求;
组装单元,用于根据所述业务请求组装请求头以及请求体,以得到请求内容;
序列化单元,用于对所述请求内容进行序列化,以得到请求文件;
发送单元,用于获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路;
判断单元,用于监听接收链路,以判断所述接收链路是否有响应文件;
处理单元,用于若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
其进一步技术方案为:所述组装单元包括:
第一解析子单元,用于通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;
内容形成子单元,用于将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过外网组装请求头和请求体,对内容进行序列化,并采用可用的发送链路进行发送,当监听到接收链路有响应文件时,进行处理,形成返回对象,实现提高内外网远程调用的效率,降低成本,可实现自动同步调用,不易出错。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的网络远程调用方法的应用场景示意图;
图2为本发明实施例提供的网络远程调用方法的流程示意图;
图3为本发明实施例提供的网络远程调用方法的子流程示意图;
图4为本发明实施例提供的网络远程调用方法的子流程示意图;
图5为本发明实施例提供的网络远程调用方法的子流程示意图;
图6为本发明实施例提供的网络远程调用装置的示意性框图;
图7为本发明实施例提供的网络远程调用装置的组装单元的示意性框图;
图8为本发明实施例提供的网络远程调用装置的发送单元的示意性框图;
图9为本发明实施例提供的网络远程调用装置的处理单元的示意性框图;
图10为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的网络远程调用方法的应用场景示意图。图2为本发明实施例提供的网络远程调用方法的示意性流程图。该网络远程调用方法应用于外网服务器,该外网服务器与内网服务器通过光闸进行数据交互,通过定义一个业务网关的角色,使得保密网和公网的业务***之间调用成为了可能,提升了在如今高速发达的信息化时代两个***交互的效率、速度、自动化能力,解决了现有***需要人工干预、传输效率低下的问题。
在本实施例中,建立网关***,网关***包括外网统一网关,内网网关代理。内外网关实际通讯方式是基于光的单向性的单向隔离软硬件***进行通讯,如光闸。
图2是本发明实施例提供的网络远程调用方法的流程示意图。如图2所示,该方法包括以下步骤S110至S160。
S110、获取业务请求。
在本实施例中,业务请求是通过声明式的抽象API进行远程调用形成的。具体地,请求和响应均是通过公开API调用形成,使得使用者无需关注复杂的协议定义,直接使用API中的方法调用即可。
S120、根据所述业务请求组装请求头以及请求体,以得到请求内容。
在本实施例中,请求内容是指请求头以及请求体。请求头描述了需要执行的目标服务器与方法代码,请求体中包含了对应的请求参数。也就是请求头中包含请求目标的接口名、一次请求的序列号;请求体中包含目标接口所需要的调用参数数据。
在一实施例中,请参阅图3,上述的步骤S120可包括步骤S121~S122。
S121、通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;
S122、将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
通过提供不同编程语言的API,在***与***之间需要进行请求-响应调用的时候。无需感知协议内容,就像调用本地方法一样进行远程调用;为了实现无感知调用,根据业务方声明的接口,匹配接口名称、接口参数、返回值。将接口名称和接口参数组装成一个协议的请求内容,将返回的信息转化成接口定义的返回值。
当然,于其他实施例中,可由业务方自主组装请求头和请求体,只需要满足传输协议的要求即可。
S130、对所述请求内容进行序列化,以得到请求文件。
在本实施例中,请求文件是指对请求内容进行序列化形成的传输文件。
具体地,根据面对对象语言的多态性以及不同的传输设备调用对应设备的数据序列化方式将所述请求内容序列化成对应的传输单位,以得到请求文件。
将组装成请求头和请求体交给传输层的发送接口进行传输,传输层发送时会根据面对对象语言的多态性,根据不同的传输设备调用对应设备的数据序列化,将数据序列化成对应的传输单位。例如:具体传输设备支持ftp协议的话,会将请求内容序列化成一个磁盘文件的形式。
S140、获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路。
在本实施例中,可用的发送链路是指当前处于空闲状态的发送链路,响应文件是指内网响应外网的请求文件的内容。
在本实施例中,通过无链接即文件或数据摆渡的方式实现同步***的调用。
在一实施例中,请参阅图4,上述的步骤S140可包括步骤S141~S142。
S141、获取当前链路中可用的发送链路。
传输层获取当前链路中可用的发送链路,将请求文件按照具体的协议发送出去。例如:具体传输设备支持ftp协议的话,会将请求文件调用ftp的上传文件命令将文件交给发送设备。
不同厂家的隔离软硬件***提供了不同的传输接口,有一些接口是双通道传输,有一些是单向传输。为了兼容不同种类的隔离硬件***,设计链路管理模块,同时支持双通道和多条单通道组成的多通道作为一条逻辑链路。上层无需感知多条链路。链路的可用性检测:定时发送心跳包,对失效的链路进行剔除。
S142、利用可用的发送链路发送所述请求文件至内网,当所述内网监听到传输设备目录存在请求文件时,内网将所述请求文件解析成请求头以及请求体,并将所述请求体解析成请求参数,利用请求参数执行业务逻辑,并将执行的结果序列化成响应内容,再次序列化为响应文件,并将响应文件发送至接收链路。
具体地,由内网网关处理监听、请文件解析以及响应内容序列化和发送的步骤,其余内容由内网业务***执行,在外网中,由外网网关处理序列化、发送、监听以及反序列化的步骤,其余由外网业务***执行。
在本实施例中,传输层通过提供适配具体的内外网交互设备能力,向上提供统一的数据发送与接受接口,向下兼容不同品牌、不同型号的传输设备。综上所述,传输层抽象了一次数据传输行为,兼容不同厂家的隔离软硬件***。
默认适配了市面上常见的安全隔离***支持的传输协议,自动将远程调用协议的数据序列化成对应的传输协议的传输单位,如:ftp、sftp、tftp、http等协议。
有些网络设备只支持单向传输,为了保证***调用的请求-响应特性,需要对物理链路进行进一步抽象,使得多条物理链路共同组成一个逻辑链路。一条逻辑链路具备双向通讯的能力;为了保证逻辑链路的可用性,逻辑链路都会实现心跳机制-定时发送心跳包来确定链路有效;传输层在准备发送数据时,会自动将请求内容序列化成对应品牌型号的传输设备要求的数据单位;传输层在准备接受数据时会对接受到的数据单位进行反序列化、超时、序列号、请求体摘要等校验,校验通过的数据将传递给请求方。
S150、监听接收链路,以判断所述接收链路是否有响应文件。
在本实施例中,通过插件开始监听接收链路,当接收链路中检测到新的数据产生时,继续调用反序列化解析成协议的响应头和响应体、并对数据正确性、时效性、状态码进行校验。例如:具体传输设备支持ftp协议的话。会持续的遍历ftp目录中是否存在响应文件,如果存在响应文件则读取并解析成协议的响应。并检查是否超过了规定的超时时间,通过摘要算法检查响应体的内容是否被篡改。
具体地,在内网和外网内均设置插件,插件提供了一种动态加载传输层的能力,插件会持续监听插件目录下是否有新增插件,检测到新增插件文件后对文件进行解析、校验文件是否符合插件接口标准、当前***版本基于动态语言可以在运行期引入新代码的机制,对解析后符合插件标准的文件进行动态加载成为代码,实现不停机的情况下新增新的传输层实现方式。
S160、若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
在本实施例中,返回对象是指业务***所能接受的也就是外网***所能接受的结构。
在一实施例中,请参阅图5,上述的步骤S160可包括步骤S161~S162。
S161、对所述响应文件进行反序列化处理,以得到响应头以及响应体。
在本实施例中,响应头描述了响应状态,即对应请求的序列号以及响应状态码,响应体描述了调用的返回数据体,即一次请求的返回值信息。
S162、解析所述响应体,以得到返回对象。
在本实施例中,将协议的响应体再次序列化成业务方的返回对象,交给业务方进行处理,最终实现一次远程跨异构网络的调用。
若所述接收链路没有响应文件,则执行所述步骤S150。
本实施例的方法基于符合国家保密规定的内外网数据交互产品,可实现公网的业务***与隔离网的业务***进行自动化调用,可避免传统的人为干涉,提高***信息化能力、提高数据交换能力、提高***运行效率。
上述的网络远程调用方法,通过外网组装请求头和请求体,对内容进行序列化,并采用可用的发送链路进行发送,当监听到接收链路有响应文件时,进行处理,形成返回对象,实现提高内外网远程调用的效率,降低成本,可实现自动同步调用,不易出错。
图6是本发明实施例提供的一种网络远程调用装置300的示意性框图。如图6所示,对应于以上网络远程调用方法,本发明还提供一种网络远程调用装置300。该网络远程调用装置300包括用于执行上述网络远程调用方法的单元,该装置可以被配置于服务器中。具体地,请参阅图6,该网络远程调用装置300包括请求获取单元301、组装单元302、序列化单元303、发送单元304、判断单元305以及处理单元306。
请求获取单元301,用于获取业务请求;组装单元302,用于根据所述业务请求组装请求头以及请求体,以得到请求内容;序列化单元303,用于对所述请求内容进行序列化,以得到请求文件;发送单元304,用于获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路;判断单元305,用于监听接收链路,以判断所述接收链路是否有响应文件;处理单元306,用于若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
在一实施例中,如图7所示,所述组装单元302包括第一解析子单元3021以及内容形成子单元3022。
第一解析子单元3021,用于通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;内容形成子单元3022,用于将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
在一实施例中,所述序列化单元303,用于根据面对对象语言的多态性以及不同的传输设备调用对应设备的数据序列化方式将所述请求内容序列化成对应的传输单位,以得到请求文件。
在一实施例中,如图8所示,所述发送单元304包括链路获取子单元3041以及文件发送子单元3042。
链路获取子单元3041,用于获取当前链路中可用的发送链路;文件发送子单元3042,用于利用可用的发送链路发送所述请求文件至内网,当所述内网监听到传输设备目录存在请求文件时,内网将所述请求文件解析成请求头以及请求体,并将所述请求体解析成请求参数,利用请求参数执行业务逻辑,并将执行的结果序列化成响应内容,再次序列化为响应文件,并将响应文件发送至接收链路。
在一实施例中,如图9所示,所述处理单元306包括反序列化子单元3061以及第二解析子单元3062。
反序列化子单元3061,用于对所述响应文件进行反序列化处理,以得到响应头以及响应体;第二解析子单元3062,用于解析所述响应体,以得到返回对象。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述网络远程调用装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述网络远程调用装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图10所示的计算机设备上运行。
请参阅图10,图10是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器,其中,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图10,该计算机设备500包括通过***总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作***5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种网络远程调用方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种网络远程调用方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
获取业务请求;根据所述业务请求组装请求头以及请求体,以得到请求内容;对所述请求内容进行序列化,以得到请求文件;获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路;监听接收链路,以判断所述接收链路是否有响应文件;若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
其中,所述业务请求是通过声明式的抽象API进行远程调用形成的。
在一实施例中,处理器502在实现所述根据所述业务请求组装请求头以及请求体,以得到请求内容步骤时,具体实现如下步骤:
通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
在一实施例中,处理器502在实现所述对所述请求内容进行序列化,以得到请求文件步骤时,具体实现如下步骤:
根据面对对象语言的多态性以及不同的传输设备调用对应设备的数据序列化方式将所述请求内容序列化成对应的传输单位,以得到请求文件。
在一实施例中,处理器502在实现所述获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路步骤时,具体实现如下步骤:
获取当前链路中可用的发送链路;利用可用的发送链路发送所述请求文件至内网,当所述内网监听到传输设备目录存在请求文件时,内网将所述请求文件解析成请求头以及请求体,并将所述请求体解析成请求参数,利用请求参数执行业务逻辑,并将执行的结果序列化成响应内容,再次序列化为响应文件,并将响应文件发送至接收链路。
在一实施例中,处理器502在实现所述对所述响应文件进行处理,以得到返回对象步骤时,具体实现如下步骤:
对所述响应文件进行反序列化处理,以得到响应头以及响应体;解析所述响应体,以得到返回对象。
应当理解,在本申请实施例中,处理器502可以是中央处理单元306(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机***中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
获取业务请求;根据所述业务请求组装请求头以及请求体,以得到请求内容;对所述请求内容进行序列化,以得到请求文件;获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路;监听接收链路,以判断所述接收链路是否有响应文件;若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
其中,所述业务请求是通过声明式的抽象API进行远程调用形成的。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述业务请求组装请求头以及请求体,以得到请求内容步骤时,具体实现如下步骤:
通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对所述请求内容进行序列化,以得到请求文件步骤时,具体实现如下步骤:
根据面对对象语言的多态性以及不同的传输设备调用对应设备的数据序列化方式将所述请求内容序列化成对应的传输单位,以得到请求文件。
在一实施例中,所述处理器在执行所述计算机程序而实现所述获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路步骤时,具体实现如下步骤:
获取当前链路中可用的发送链路;利用可用的发送链路发送所述请求文件至内网,当所述内网监听到传输设备目录存在请求文件时,内网将所述请求文件解析成请求头以及请求体,并将所述请求体解析成请求参数,利用请求参数执行业务逻辑,并将执行的结果序列化成响应内容,再次序列化为响应文件,并将响应文件发送至接收链路。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对所述响应文件进行处理,以得到返回对象步骤时,具体实现如下步骤:
对所述响应文件进行反序列化处理,以得到响应头以及响应体;解析所述响应体,以得到返回对象。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.网络远程调用方法,其特征在于,包括:
获取业务请求;
根据所述业务请求组装请求头以及请求体,以得到请求内容;
对所述请求内容进行序列化,以得到请求文件;
获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路;
监听接收链路,以判断所述接收链路是否有响应文件;
若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
2.根据权利要求1所述的网络远程调用方法,其特征在于,所述业务请求是通过声明式的抽象API进行远程调用形成的。
3.根据权利要求1所述的网络远程调用方法,其特征在于,所述根据所述业务请求组装请求头以及请求体,以得到请求内容,包括:
通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;
将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
4.根据权利要求1所述的网络远程调用方法,其特征在于,所述对所述请求内容进行序列化,以得到请求文件,包括:
根据面对对象语言的多态性以及不同的传输设备调用对应设备的数据序列化方式将所述请求内容序列化成对应的传输单位,以得到请求文件。
5.根据权利要求1所述的网络远程调用方法,其特征在于,所述获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路,包括:
获取当前链路中可用的发送链路;
利用可用的发送链路发送所述请求文件至内网,当所述内网监听到传输设备目录存在请求文件时,内网将所述请求文件解析成请求头以及请求体,并将所述请求体解析成请求参数,利用请求参数执行业务逻辑,并将执行的结果序列化成响应内容,再次序列化为响应文件,并将响应文件发送至接收链路。
6.根据权利要求1所述的网络远程调用方法,其特征在于,所述对所述响应文件进行处理,以得到返回对象,包括:
对所述响应文件进行反序列化处理,以得到响应头以及响应体;
解析所述响应体,以得到返回对象。
7.网络远程调用装置,其特征在于,包括:
请求获取单元,用于获取业务请求;
组装单元,用于根据所述业务请求组装请求头以及请求体,以得到请求内容;
序列化单元,用于对所述请求内容进行序列化,以得到请求文件;
发送单元,用于获取当前链路中可用的发送链路,并采用无链接传输方式发送所述请求文件至内网,以获取内网对所述请求文件的响应文件,并发送至接收链路;
判断单元,用于监听接收链路,以判断所述接收链路是否有响应文件;
处理单元,用于若所述接收链路有响应文件,则对所述响应文件进行处理,以得到返回对象。
8.根据权利要求7所述的网络远程调用装置,其特征在于,所述组装单元包括:
第一解析子单元,用于通过动态语言的反射机制解析所述业务请求调用的方法名以及方法参数;
内容形成子单元,用于将所述方法名以及方法参数组装成请求头和请求体,以得到请求内容。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210729469.3A CN115118757A (zh) | 2022-06-24 | 2022-06-24 | 网络远程调用方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210729469.3A CN115118757A (zh) | 2022-06-24 | 2022-06-24 | 网络远程调用方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115118757A true CN115118757A (zh) | 2022-09-27 |
Family
ID=83328101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210729469.3A Pending CN115118757A (zh) | 2022-06-24 | 2022-06-24 | 网络远程调用方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115118757A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100241712A1 (en) * | 2009-03-23 | 2010-09-23 | Siemens Aktiengesellschaft | Method and System for a Distributed and Extensible Communication Framework |
CN106572051A (zh) * | 2015-10-09 | 2017-04-19 | 阿里巴巴集团控股有限公司 | 分布式***中分布式锁服务实现方法以及装置 |
CN109614253A (zh) * | 2018-12-12 | 2019-04-12 | 郑州云海信息技术有限公司 | 一种实现远程过程调用的方法及装置 |
CN110187983A (zh) * | 2019-05-24 | 2019-08-30 | 北京奇艺世纪科技有限公司 | 一种远程调用方法、装置及电子设备 |
CN110719307A (zh) * | 2018-07-12 | 2020-01-21 | 深圳云天励飞技术有限公司 | 数据传输方法、客户端、服务端及计算机可读存储介质 |
CN111917737A (zh) * | 2020-07-14 | 2020-11-10 | 北京明略软件***有限公司 | 一种跨网rpc调用***及方法 |
-
2022
- 2022-06-24 CN CN202210729469.3A patent/CN115118757A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100241712A1 (en) * | 2009-03-23 | 2010-09-23 | Siemens Aktiengesellschaft | Method and System for a Distributed and Extensible Communication Framework |
CN106572051A (zh) * | 2015-10-09 | 2017-04-19 | 阿里巴巴集团控股有限公司 | 分布式***中分布式锁服务实现方法以及装置 |
CN110719307A (zh) * | 2018-07-12 | 2020-01-21 | 深圳云天励飞技术有限公司 | 数据传输方法、客户端、服务端及计算机可读存储介质 |
CN109614253A (zh) * | 2018-12-12 | 2019-04-12 | 郑州云海信息技术有限公司 | 一种实现远程过程调用的方法及装置 |
CN110187983A (zh) * | 2019-05-24 | 2019-08-30 | 北京奇艺世纪科技有限公司 | 一种远程调用方法、装置及电子设备 |
CN111917737A (zh) * | 2020-07-14 | 2020-11-10 | 北京明略软件***有限公司 | 一种跨网rpc调用***及方法 |
Non-Patent Citations (1)
Title |
---|
杨建: "《Java程序设计》", pages: 155 - 159 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111083225B (zh) | 在物联网平台中的数据处理方法、装置及物联网平台 | |
CN113630372A (zh) | 一种边缘计算的云边协同*** | |
WO2016184175A1 (zh) | 数据库处理方法及装置 | |
US20070260750A1 (en) | Adaptable data connector | |
US20070022324A1 (en) | Multi-platform test automation enhancement | |
WO2022016847A1 (zh) | 一种适用于云平台的自动化测试方法及装置 | |
US20110078798A1 (en) | Remote procedure call (rpc) services fuzz attacking tool | |
CN104935621A (zh) | 一种远程监控***及远程监控方法 | |
CN111930489B (zh) | 一种任务调度方法、装置、设备及存储介质 | |
CN111782530B (zh) | 一种远程调试方法、装置、***、电子设备及存储介质 | |
US11294740B2 (en) | Event to serverless function workflow instance mapping mechanism | |
WO2020253367A1 (zh) | 通讯故障分析方法、装置及区块链通讯平台 | |
CN112350914A (zh) | 基于MQTT云平台的Modbus通信方法及*** | |
CN111526046A (zh) | 一种bmc时间的设置方法、装置、设备和存储介质 | |
WO2017166166A1 (en) | System and method for providing runtime tracing for web-based client accessing transactional middleware platform using extension interface | |
CN112765246B (zh) | 任务处理方法、装置、电子设备和存储介质 | |
CN115118757A (zh) | 网络远程调用方法、装置、计算机设备及存储介质 | |
CN116009984A (zh) | 安全编排与自动化响应处理方法、装置及电子设备 | |
US20030154288A1 (en) | Server-client system and data transfer method used in the same system | |
JP2021505989A (ja) | エラー・ハンドリングのための方法、コンピュータ・プログラム、データ処理システム、およびエラー・ハンドリング・コンポーネント | |
CN111459819B (zh) | 软件测试方法及装置、电子设备、计算机可读介质 | |
CN114238056A (zh) | 日志动态采集方法、装置、计算机设备及存储介质 | |
CN113553243A (zh) | 远端侦错方法 | |
US11431820B1 (en) | Method and system for implementing inter-process communications | |
WO2022022446A1 (zh) | 一种打印日志的方法、装置及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220927 |
|
RJ01 | Rejection of invention patent application after publication |