[发明专利]基于WebSocket实现跨容器通信的方法和装置在审
申请号: | 202310088861.9 | 申请日: | 2023-02-08 |
公开(公告)号: | CN116192482A | 公开(公告)日: | 2023-05-30 |
发明(设计)人: | 杨晓兵;陈郓;王东;马姿;白小迪;于爽;黄晓洋;王琦梦 | 申请(专利权)人: | 中原银行股份有限公司 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L67/60;H04L67/146;H04L67/02 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 牛芬洁;黄健 |
地址: | 450046 河南省郑州市郑*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 websocket 实现 容器 通信 方法 装置 | ||
本申请提供的一种基于WebSocket实现跨容器通信的方法和装置。该方法包括:目标容器内的第一服务器可以接收到目标容器外的第二服务器通过第一服务器与第二服务器的双向通信连接发送的通信请求,然后获取该通信请求对应的请求结果,并根据该请求结果通过第一服务器与第二服务器的双向通信连接,向第二服务器发送消息返回体,使得第二服务器根据消息返回体,与第一服务器进行通信。例如,双向通信连接可以是WebSocket连接,无需进行网络映射,使得容器内外的应用程序进行Http服务交互更加灵活,而且容器内应用程序主动发起WebSocket连接,对容器没有侵入性,保证了容器的网络安全。
技术领域
本申请涉及通信技术领域,尤其涉及一种基于WebSocket实现跨容器通信的方法和装置。
背景技术
Docker容器是一个开源的应用容器引擎,开发者可以以统一的方式打包应程序以及依赖包到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上(例如Linux服务器、windows服务器等),可以实现虚拟化。
在相关技术中,当容器内的应用程序向容器外的应用程序提供Http服务时,需要使用容器提供的网络映射访问方式,在启动容器时指定映射的端口,使得容器外的应用程序可以根据该端口访问容器内的应用程序。
但是,当容器内的应用程序的端口是动态生成的,由于端口难以预知,这种情况下无法提前绑定端口,无法实现Http服务交互。
发明内容
本申请提供一种基于WebSocket实现跨容器通信的方法和装置,用以解决相关技术中在无法提前绑定端口的情况下,无法实现Http服务交互的问题。
第一方面,本申请提供一种基于WebSocket实现跨容器通信的方法,应用于目标容器内的第一服务器,所述方法包括:
接收所述目标容器外的第二服务器发送的通信请求;
获取所述通信请求对应的请求结果;
根据所述请求结果,通过所述第一服务器与所述第二服务器的双向通信连接,向所述第二服务器发送消息返回体,所述消息返回体用于实现所述第一服务器与所述第二服务器的通信。
在一种可能的实施方式中,所述获取所述通信请求对应的请求结果,包括:
对所述通信请求进行解析处理,得到所述通信请求的统一资源定位符URL地址和请求参数;
基于所述URL地址和所述请求参数,调用Http服务得到所述Http服务的调用结果;
根据所述Http服务的调用结果,确定所述请求结果。
在一种可能的实施方式中,所述通过所述第一服务器与所述第二服务器的双向通信连接,向所述第二服务器发送消息返回体,包括:
对所述请求结果进行解析处理,构建所述消息返回体;
根据所述通信请求,确定所述双向通信连接;
通过所述双向通信连接,向所述第二服务器发送所述消息返回体。
在一种可能的实施方式中,所述方法还包括:
与所述第二服务器建立所述双向通信连接;
开启本地的Http服务。
第二方面,本申请提供一种基于WebSocket实现跨容器通信的方法,应用于目标容器外的第二服务器,所述方法包括:
获取通信请求,所述通信请求包括Http请求的URL地址和请求参数;
通过所述第二服务器与所述目标容器内的第一服务器的双向通信连接,向所述第一服务器发送所述通信请求;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中原银行股份有限公司,未经中原银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310088861.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多口切换扩展坞
- 下一篇:一种提高大肠杆菌鲁棒性的重组菌及其构建方法