本公开涉及但不限于云计算,尤其涉及一种消息处理方法、装置、电子设备及存储介质。
背景技术:
1、随着云计算技术的快速发展,越来越多的服务与应用是通过将软件应用容器化的容器集群提供的,通过容器集群编排系统可以对容器集群进行编排,实现对容器集群的持续交付、快速部署和智能运维等。
2、在现有容器编排系统中,对外提供服务的方式往往依托容器编排系统节点进行转发负载,无法应对大规模的生成需求。当客户端发送的外部请求比较多时,存在外部请求处理时间长和访问效率低等问题。
技术实现思路
1、有鉴于此,本公开实施例公开了一种消息处理方法、装置、电子设备及存储介质。
2、根据本公开实施例的第一方面,提供一种消息处理方法,由负载均衡节点执行,所述方法包括:接收客户端发送的第一请求;根据负载均衡规则,确定分配所述第一请求的目标容器实例;根据所述目标容器实例的互联网协议ip地址和服务端口的端口号,修改所述第一请求的目标地址并得到第二请求;向所述目标容器实例所在的容器节点发送所述第二请求。
3、在一个实施例中,所述方法还包括:接收所述第二请求的第一响应;其中,所述第一响应的源地址为所述目标容器实例的ip地址,且所述第一响应的目标地址为所述负载均衡节点的ip地址;将所述第一响应的源地址修改为所述负载均衡节点的ip地址,并将所述第一响应的目标地址修改为所述客户端的ip地址,得到第二响应;向所述客户端发送所述第二响应。
4、在一个实施例中,所述方法还包括:获取容器集群内一个或多个容器节点内备选容器实例的部署信息,其中,所述部署信息包括:所述容器节点部署的一个或多个备选容器实例的ip地址和服务端口的端口号。
5、在一个实施例中,所述获取容器集群内一个或多个容器节点内备选容器实例的部署信息包括:接收容器集群内一个或多个容器节点广播的所述部署信息;或者,接收负载均衡节点的控制器从所述容器集群的服务器获取的所述部署信息。
6、第二方面,本公开实施例提供一种消息处理方法,由容器节点执行,所述方法包括:接收负载均衡节点发送的第二请求;其中,所述第二请求包括:目标容器实例的互联网协议ip地址和服务端口的端口号;所述第二请求是所述负载均衡节点基于客户端提供的第一请求生成并提供的;所述第一请求的目标地址指向所述负载均衡节点;根据所述目标容器实例的ip地址和服务端口的端口号,确定所述目标容器实例的网络命名空间;将所述第二请求发送至所述目标容器实例的网络命名空间。
7、在一个实施例中,所述方法还包括:接收所述目标容器实例基于所述第二请求发送第一响应;其中,所述第一响应的目标地址为所述负载均衡节点的ip地址,且源地址为所述目标容器实例的ip地址和服务端口的端口号;将所述第一响应发送给所述负载均衡节点,其中,所述第一响应,用于供所述负载均衡节点向所述客户端提供第二响应;其中,所述第二响应的目标地址为所述客户端的ip地址且源地址为所述负载均衡节点的ip地址。
8、第三方面,本公开实施例提供一种消息处理方法,由负载均衡节点的控制器执行,所述方法包括:监听部署信息,其中,所述部署信息至少包括:容器集群内一个或多个容器节点部署的一个或多个备选容器实例的ip地址和服务端口的端口号;将所述部署信息发送至负载均衡节点,其中,所述部署信息,用于供所述负载均衡节点修改从客户端接收第一请求的目标地址得到直接路由给目标容器实例的第二请求。
9、第四方面,本公开实施例提供一种消息处理装置,所述装置包括:接收模块,用于接收客户端发送的第一请求;确定模块,用于:根据负载均衡规则,确定分配所述第一请求的目标容器实例;修改模块,用于:根据所述目标容器实例的互联网协议ip地址目标容器实例和服务端口的端口号,修改所述第一请求的目标地址并得到第二请求;发送模块,用于向所述目标容器实例所在的容器节点发送所述第二请求。
10、第五方面,本公开实施例提供一种消息处理装置,所述装置包括:接收模块,用于:接收负载均衡节点发送的第二请求;其中,所述第二请求包括:目标容器实例的互联网协议ip地址和服务端口的端口号;所述第二请求是所述负载均衡节点基于客户端提供的第一请求生成并提供的;所述第一请求的目标地址指向所述负载均衡节点;确定模块,用于:根据所述目标容器实例的ip地址和服务端口的端口号,确定所述目标容器实例的网络命名空间;发送模块,用于将所述第二请求发送至所述目标容器实例的网络命名空间。
11、第六方面,本公开实施例提供一种消息处理装置,所述装置包括:监听模块,用于:监听部署信息,其中,所述部署信息至少包括:容器集群内一个或多个容器节点部署的一个或多个备选容器实例的ip地址和服务端口的端口号;发送模块,用于:将所述部署信息发送至负载均衡节点,其中,所述部署信息,用于供所述负载均衡节点修改从客户端接收第一请求的目标地址得到直接路由给目标容器实例的第二请求。
12、第七方面,本公开实施例提供一种电子设备,所述电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器运行所述计算机程序时,执行前述一个或多个技术方案所述方法的步骤。
13、第八方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令;计算机可执行指令被处理器执行后,能够实现前述一个或多个技术方案所述方法。
14、本公开实施例提供的消息处理方法,负载均衡节点根据负载均衡规则确定分配第一请求的目标容器实例,在负载均衡时直接确定目标容器实例的ip地址和端口号,并根据确定的ip地址和端口号写入第一请求就得到了第二请求消息,直接将第二请求消息发送出去,就会自动路由到目标容器实例,无需二次负载均衡和请求消息中的地址修改,可以提高请求的发送速度,进而提升请求的响应速率。
1.一种消息处理方法,其特征在于,由负载均衡节点执行,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1至2任一项所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述获取容器集群内一个或多个容器节点内备选容器实例的部署信息包括:
5.一种消息处理方法,其特征在于,由容器节点执行,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.一种消息处理方法,其特征在于,由负载均衡节点的控制器执行,所述方法包括:
8.一种消息处理装置,其特征在于,所述装置包括:
9.一种消息处理装置,其特征在于,所述装置包括:
10.一种消息处理装置,其特征在于,所述装置包括:
11.一种电子设备,其特征在于,所述电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器运行计算机程序时,执行权利要求1至7任一项所述消息处理方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令;所述计算机可执行指令被处理器执行后,能够实现如权利要求1至7任一项所述消息处理方法。