本技术涉及内外网通讯,特别是涉及一种内外网通讯方法以及系统。
背景技术:
1、内网通常指的是组织内部的私有网络,比如公司或学校的网络。内网的ip地址通常是私有的,不直接暴露在互联网上,外部用户无法直接访问内网资源。外网通常指的是公共的网络,最典型的就是互联网(internet)。外网的ip地址是公有的,可以被任何人访问,因此外网上的资源可以被全球任何地方的用户访问。
2、在某些情况下,内网与外网之间的可能需要进行通讯以进行数据交换和信息传递。
3、目前,内网与外网之间的通讯方法主要为外网的服务器将请求数据通过网络安全隔离装置摆渡到内网数据库,内网的服务器将响应数据通过网络安全隔离装置摆渡到外网的服务器,需要依赖网络安全隔离装置的摆渡功能。
4、由于,网络安全隔离装置仅支持jdbc协议进行数据传输,因此内外网之间利用网络安全隔离装置进行通讯会存在灵活性差、响应速度慢以及数据传输速率低等问题。
技术实现思路
1、本技术提供一种内外网通讯方法以及系统,以便提高内外网通讯的灵活性、提高响应速度以及提高数据传输效率。
2、第一方面,本技术提供一种内外网通讯方法,应用于外网代理服务器,包括:
3、接收外网服务器发送的数据发送请求;
4、对所述数据发送请求进行解析,获得数据发送信息;所述数据发送信息包括数据发送请求中携带的数据项、所述外网代理服务器的ip地址、端口号以及所述数据发送请求对应的标识符;
5、将所述数据发送信息发送至jms消息队列,以使内网代理服务器获取jms消息队列中的所述数据发送信息。
6、可选的,所述方法还包括:
7、当监听到所述jms消息队列中存在反馈信息时,唤醒所述外网代理服务器中将所述数据发送信息发送至jms消息队列的线程,唤醒所述线程为使所示线程从睡眠状态转换为工作状态;
8、在所述线程处于工作状态的情况下,获取所述反馈信息,将所述反馈信息发送至外网服务器。
9、可选的,在所述接收外网服务器发送的数据发送请求之前,所述方法还包括:
10、根据预先设置的配置文件,配置jms消息队列的地址、配置jms连接工厂以及当前外网代理服务器的地址。
11、可选的,所述数据项包括请求方法、请求路径、请求头以及请求体;
12、所述将所述数据发送信息发送至jms消息队列,包括:
13、将所述请求方法、所述请求路径、所述请求头、所述请求体、所述外网代理服务器的ip地址、端口号以及所述数据发送请求对应的标识符封装为对象;
14、创建所述对象的jms消息,通过所述jms消息队列发送所述jms消息。
15、可选的,唤醒所述外网代理服务器中所述线程,包括:
16、判断所述反馈信息中的ip地址以及端口号与所述外网代理服务器的ip地址以及端口号是否一致;
17、若一致,则唤醒所述外网代理服务器中所述线程。
18、第二方面,本技术还提供一种内外网通讯方法,应用于内网代理服务器,所述方法包括:
19、当监听到外网代理服务器中的jms消息队列中存在数据发送信息时,获取所述数据发送信息并将所述数据发送信息发送至负载服务器进行数据处理,所述数据发送信息包括数据发送请求中携带的数据项、所述外网代理服务器的ip地址、端口号以及所述数据发送请求对应的标识符;
20、在负载服务器完成数据处理的情况下,接收所述负载服务器发送的反馈信息,并将所述反馈信息发送至jms队列,以使外网代理服务器获取jms消息队列中的反馈信息。
21、可选的,所述接收所述负载服务器发送的反馈信息,并将所述反馈信息发送至jms队列,包括:
22、从所述负载服务器的url对象中获取反馈信息,所述反馈信息包括反馈数据、http响应码、响应头、所述外网代理服务器的ip地址、端口号以及所述数据发送请求对应的标识符;将所述反馈信息封装成返回对象,创建所述返回对象的jms消息,通过所述jms消息队列发送所述jms消息。
23、可选的,在获取数据发送信息之前,所述方法还包括:
24、根据预先设置的配置文件,配置jms消息队列的地址、配置jms连接工厂、监听的目标消息队列的地址以及负载服务器的地址。
25、第三方面,本技术还提供一种内外网通讯系统,所述系统包括:
26、外网代理服务器用于接收外网服务器发送的数据发送请求;
27、对所述数据发送请求进行解析,获得数据发送信息;所述数据发送信息包括数据发送请求中携带的数据项、所述外网代理服务器的ip地址、端口号以及所述数据发送请求对应的标识符;
28、将所述数据发送信息发送至jms消息队列。
29、内网代理服务器用于当监听到所述jms消息队列中存在数据发送信息时,获取所述数据发送信息并将所述数据发送信息发送至负载服务器进行数据处理,所述数据发送信息包括数据发送请求中携带的数据项、所述外网代理服务器的ip地址、端口号以及所述数据发送请求对应的标识符;
30、在负载服务器完成数据处理的情况下,接收负载服务器发送的反馈信息,并将所述反馈信息发送至jms队列,以使外网代理服务器获取jms消息队列中的反馈信息。
31、可选的,外网代理服务器还用于根据预先设置的配置文件,配置jms消息队列的地址、配置jms连接工厂以及当前外网代理服务器的地址。
32、内网代理服务器还用于根据预先设置的配置文件,配置jms消息队列的地址、配置jms连接工厂、监听的目标消息队列的地址以及负载服务器的地址。
33、可选的,外网代理服务器还用于当监听到jms消息队列中存在反馈信息时,唤醒外网代理服务器中将数据发送信息发送至jms消息队列的线程,唤醒所述线程为使所示线程从睡眠状态转换为工作状态;
34、在线程处于工作状态的情况下,获取反馈信息,将反馈信息发送至外网服务器。
35、可选的,外网代理服务器具体用于,当监听到所述jms消息队列中存在反馈信息时,判断所述反馈信息中的ip地址以及端口号与所述外网代理服务器的ip地址以及端口号是否一致;
36、若一致,则唤醒所述外网代理服务器中所述线程。
37、可选的,数据项可以包括请求方法、请求路径、请求头以及请求体;
38、外网代理服务器具体用于,将请求方法、所述请求路径、所述请求头、所述请求体、外网代理服务器的ip地址、端口号以及数据发送请求对应的标识符封装为对象;
39、创建对象的jms消息,通过jms消息队列发送jms消息。
40、可选的,内网代理服务器具体用于,从负载服务器的url对象中获取反馈信息,其中,反馈信息可以包括反馈数据、http响应码、响应头、外网代理服务器的ip地址、端口号以及数据发送请求对应的标识符;
41、将反馈信息封装成返回对象,创建返回对象的jms消息,通过jms消息队列发送所述jms消息。
42、第四方面,本技术实施例提供了一种设备,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行前述第一方面任一项所述的方法。
43、第五方面,本技术实施例提供了一种计算机存储介质,所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现前述第一方面任一项所述的方法。
44、相较于现有技术,本技术具有以下有益效果:
45、本技术中外网代理服务器可以接收外网服务器发送的数据发送请求,然后对数据发送请求进行解析,获得数据发送信息,其中,数据发送信息可以包括数据发送请求中携带的数据项、外网代理服务器的ip地址、端口号以及数据发送请求对应的标识符。然后外网代理服务器可以将数据发送信息发送至jms消息队列,以使内网代理服务器获取jms消息队列中的数据发送信息。这样外网代理服务器可以利用jms消息队列将数据发送信息传输至内网代理服务器,进而使得内网与外网之间通过jms消息队列进行通讯,jms消息队列支持多种数据格式和协议,不只局限于一种协议,进而内外网之间利用jms通讯可以提高通讯的灵活性。并且jms提供了异步通信能力,允许外网代理服务器发送消息而不必等待立即响应,进而可以提高内外网通讯的响应速度以及数据传输效率。
1.一种内外网通讯方法,其特征在于,应用于外网代理服务器,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,在所述接收外网服务器发送的数据发送请求之前,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述数据项包括请求方法、请求路径、请求头以及请求体;
5.根据权利要求2所述的方法,其特征在于,唤醒所述外网代理服务器中所述线程,包括:
6.一种内外网通讯方法,其特征在于,应用于内网代理服务器,包括:
7.根据权利要求6所述的方法,其特征在于,所述接收所述负载服务器发送的反馈信息,并将所述反馈信息发送至jms队列,包括:
8.根据权利要求6所述的方法,其特征在于,在获取数据发送信息之前,所述方法还包括:
9.一种内外网通讯系统,其特征在于,包括外网代理服务器以及内网代理服务器;
10.根据权利要求9所述的系统,所述外网代理服务器还用于根据预先设置的配置文件,配置jms消息队列的地址、配置jms连接工厂以及当前外网代理服务器的地址;