CN112073398A - 消息队列的处理方法、装置和***、存储介质和电子装置 - Google Patents
消息队列的处理方法、装置和***、存储介质和电子装置 Download PDFInfo
- Publication number
- CN112073398A CN112073398A CN202010881279.4A CN202010881279A CN112073398A CN 112073398 A CN112073398 A CN 112073398A CN 202010881279 A CN202010881279 A CN 202010881279A CN 112073398 A CN112073398 A CN 112073398A
- Authority
- CN
- China
- Prior art keywords
- target
- gateway
- client
- message queue
- message
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0263—Rule management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种消息队列的处理方法、装置和***、存储介质和电子装置,其中,该方法包括:通过第一网关接收目标服务节点返回的第一响应消息,其中,所述第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,所述第一响应消息中携带有所述目标服务节点的目标网络地址;通过所述第一网关将所述第一响应消息中的所述目标网络地址替换为与所述目标消息队列对应的目标虚拟地址,得到第二响应消息;通过所述第一网关将所述第二响应消息发送给所述第一客户端。通过本申请,解决了相关技术中消息队列的处理方式存在消息易被截获导致的安全性差的问题,提高了服务节点的安全性。
Description
技术领域
本申请涉及互联网领域,尤其涉及一种消息队列的处理方法、装置和***、存储介质和电子装置。
背景技术
目前,用户可以使用分布式消息队列进行消息处理。例如,kafka作为一个开源的分布式消息队列,用户在部署完kafka后,可以将kafka机器的broker的IP地址、鉴权信息等发布给使用者,使用者就可以使用客户端进行消息生产和消费。
当有公网和内网访问需求时,需要在主机上同时绑定内网IP和公网IP(zookeeper上保存有broker的主机名以及对应的内网IP和外网IP)。如果将Broker的外网IP地址发布给使用者,那么,在通信的过程中,如果通信的消息被截获,非法人员可以获取到Broker的外网IP地址,进而通过外网IP地址访问到Broker,存在安全隐患。
因此,相关技术中消息队列的处理方式,存在消息易被截获导致的安全性差的问题。
发明内容
本申请提供了一种消息队列的处理方法、装置和***、存储介质和电子装置,以至少解决相关技术中消息队列的处理方式存在消息易被截获导致的安全性差的问题。
根据本申请实施例的一个方面,提供了一种消息队列的处理方法,包括:通过第一网关接收目标服务节点返回的第一响应消息,其中,所述第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,所述第一响应消息中携带有所述目标服务节点的目标网络地址;通过所述第一网关将所述第一响应消息中的所述目标网络地址替换为与所述目标消息队列对应的目标虚拟地址,得到第二响应消息;通过所述第一网关将所述第二响应消息发送给所述第一客户端。
可选地,在通过所述第一网关接收所述目标服务节点返回的所述第一响应消息之前,所述方法还包括:通过所述第一网关接收所述第一客户端的所述处理请求,其中,所述处理请求用于请求对所述目标消息队列执行所述第一操作,所述处理请求中携带有所述目标虚拟地址;通过所述第一网关获取与所述第一客户端对应的第一对象信息,其中,所述第一对象信息用于表示使用所述第一客户端的第一对象;通过所述第一网关根据所述第一对象信息确定所述第一对象具有操作所述目标消息队列的权限。
可选地,在获取与所述第一客户端对应的所述第一对象信息之前,所述方法还包括:通过所述第一网关获取多个网关的流量统计数据,其中,所述多个网关包括所述第一网关和所述第一网关的关联网关,所述流量统计数据用于指示所述多个网关中与生产消息和消费消息所对应的总流量;在所述总流量小于目标流量阈值的情况下,通过所述第一网关确定允许处理所述处理请求。
可选地,在通过所述第一网关获取所述多个网关的所述流量统计数据之后,所述方法还包括:在所述总流量大于或者等于所述目标流量阈值的情况下,通过所述第一网关向第二客户端发送告警消息,其中,所述告警消息用于对所述总流量超过所述目标流量阈值进行告警,所述第二客户端为与订阅流量告警的第二对象对应的客户端;通过所述第一网关向所述第一客户端发送拒绝消息,其中,所述拒绝消息用于指示拒绝所述处理请求。
可选地,在通过所述第一网关接收所述目标服务节点返回的所述第一响应消息之前,所述方法还包括:通过目标网关接收所述第一客户端的所述处理请求,其中,所述处理请求用于请求对所述目标消息队列中的目标消息执行所述第一操作,所述目标消息队列包含多个分区,所述多个分区中的每个分区位于服务节点集群中的一个服务节点中,所述目标消息存储在所述服务节点集群中的所述目标服务节点中;通过所述目标网关从多个网关中确定出与所述目标服务节点对应的所述第一网关,其中,所述多个网关包括所述第一网关和所述第一网关的关联网关,所述服务节点集群中的每个服务节点对应于所述多个网关中的一个网关;在所述第一网关处于可用状态的情况下,通过所述目标网关向所述第一网关转发所述处理请求。
可选地,在通过所述目标网关从所述多个网关中确定出与所述目标服务节点对应的所述第一网关之后,所述方法还包括:在所述第一网关处于不可用状态的情况下,通过所述目标网关从所述关联网关中选取出第二网关,其中,所述第二网关处于可用状态,所述第二网关与所述目标服务节点之间具有通信连接;通过所述目标网关向所述第二网关转发所述处理请求,以通过所述第二网关与所述目标服务节点之间的通信连接将所述处理请求发送给所述目标服务节点。
可选地,在通过所述第一网关接收所述目标服务节点返回的所述第一响应消息之前,所述方法还包括:通过目标服务器接收第三客户端发送的创建请求,其中,所述创建请求用于请求创建所述目标消息队列,所述目标消息队列包含的分区为第一数量;响应所述创建请求,通过所述目标服务器从剩余可用分区中选取出所述第一数量的分区,得到为所述目标消息队列分配的一个或多个分区;通过所述目标服务器使用所述一个或多个分区创建所述目标消息队列。
可选地,在通过所述目标服务器接收所述第三客户端发送的所述创建请求之前,所述方法还包括:通过所述第三客户端显示目标创建界面,其中,所述目标创建界面为所述目标消息队列的创建界面;通过所述第三客户端检测到对所述目标创建界面执行的第二操作,其中,所述第二操作用于配置所述目标消息队列的消息队列名称,以及所述目标消息队列包含的分区的所述第一数量;通过所述第三客户端检测到对所述目标创建界面执行的第三操作,其中,所述第三操作用于触发创建所述目标消息队列;响应所述第三操作,通过所述第三客户端向所述目标服务器发送所述创建请求,其中,所述创建请求中携带有所述消息队列名称和所述第一数量。
可选地,在通过所述目标服务器使用所述一个或多个分区创建所述目标消息队列之后,所述方法还包括:通过所述目标服务器接收所述第三客户端发送的分区增加请求,其中,所述分区增加请求用于请求增加所述目标消息队列中包含的分区数量,增加的分区数量为第二数量;响应所述分区增加请求,通过所述目标服务器从剩余可用分区中选取出所述第二数量的分区,得到所述目标消息队列的待增加分区;通过所述目标服务器使用所述待增加分区更新所述目标消息队列,得到更新后的所述目标消息队列。
根据本申请实施例的另一个方面,还提供了一种消息队列的处理装置,包括:第一接收单元,用于接收目标服务节点返回的第一响应消息,其中,所述第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,所述第一响应消息中携带有所述目标服务节点的目标网络地址;替换单元,用于将所述第一响应消息中的所述目标网络地址替换为与所述目标消息队列对应的目标虚拟地址,得到第二响应消息;第一发送单元,用于将所述第二响应消息发送给所述第一客户端。
可选地,所述装置还包括:第二接收单元,用于接收所述第一客户端的所述处理请求,其中,所述处理请求用于请求对所述目标消息队列执行所述第一操作,所述处理请求中携带有所述目标虚拟地址;第一获取单元,用于获取与所述第一客户端对应的第一对象信息,其中,所述第一对象信息用于表示使用所述第一客户端的第一对象;第一确定单元,用于根据所述第一对象信息确定所述第一对象具有操作所述目标消息队列的权限。
可选地,所述装置还包括:第二获取单元,用于在获取与所述第一客户端对应的所述第一对象信息之前,获取多个网关的流量统计数据,其中,所述多个网关包括所述第一网关和所述第一网关的关联网关,所述流量统计数据用于指示所述多个网关中与生产消息和消费消息所对应的总流量;第二确定单元,用于在所述总流量小于目标流量阈值的情况下,确定允许处理所述处理请求。
可选地,所述装置还包括:第三发送单元,用于在通过所述第一网关获取所述多个网关的所述流量统计数据之后,在所述总流量大于或者等于所述目标流量阈值的情况下,向第二客户端发送告警消息,其中,所述告警消息用于对所述总流量超过所述目标流量阈值进行告警,所述第二客户端为与订阅流量告警的第二对象对应的客户端;第四发送单元,用于向所述第一客户端发送拒绝消息,其中,所述拒绝消息用于指示拒绝所述处理请求。
根据本申请实施例的又一个方面,还提供了一种消息队列的处理***,包括:第一网关和服务节点集群,所述服务节点集群中存储有目标消息队列,其中,所述服务节点集群中的目标服务节点,用于响应第一客户端的处理请求,对所述目标消息队列执行第一操作,得到目标处理结果;向所述第一网关返回的第一响应消息,其中,所述第一响应消息用于指示所述目标处理结果,所述第一响应消息中携带有所述目标服务节点的目标网络地址;所述第一网关,与所述服务节点集群中的目标服务节点通信连接,用于接收所述目标服务节点返回的第一响应消息;将所述第一响应消息中的所述目标网络地址替换为与所述目标消息队列对应的目标虚拟地址,得到第二响应消息;将所述第二响应消息发送给所述第一客户端。
可选地,所述第一网关,还用于接收所述第一客户端的所述处理请求,其中,所述处理请求用于请求对所述目标消息队列执行所述第一操作,所述处理请求中携带有所述目标虚拟地址;获取与所述第一客户端对应的第一对象信息,其中,所述第一对象信息用于表示使用所述第一客户端的第一对象;根据所述第一对象信息确定所述第一对象具有操作所述目标消息队列的权限。
可选地,所述第一网关,还用于在获取与所述第一客户端对应的所述第一对象信息之前,获取多个网关的流量统计数据,其中,所述多个网关包括所述第一网关和所述第一网关的关联网关,所述流量统计数据用于指示所述多个网关中与生产消息和消费消息所对应的总流量;在所述总流量小于目标流量阈值的情况下,确定允许处理所述处理请求。
可选地,所述第一网关,还用于在通过所述第一网关获取所述多个网关的所述流量统计数据之后,在所述总流量大于或者等于所述目标流量阈值的情况下,向第二客户端发送告警消息,其中,所述告警消息用于对所述总流量超过所述目标流量阈值进行告警,所述第二客户端为与订阅流量告警的第二对象对应的客户端;向所述第一客户端发送拒绝消息,其中,所述拒绝消息用于指示拒绝所述处理请求。
可选地,所述***还包括:目标网关,所述第一网关的关联网关,其中,所述目标网关,与所述第一网关和所述关联网关分别通信连接,用于接收所述第一客户端的所述处理请求,其中,所述处理请求用于请求对所述目标消息队列中的目标消息执行所述第一操作,所述目标消息队列包含多个分区,所述多个分区中的每个分区位于所述服务节点集群中的一个服务节点中,所述目标消息存储在所述目标服务节点中;从多个网关中确定出与所述目标服务节点对应的所述第一网关,其中,所述多个网关包括所述第一网关和所述关联网关,所述服务节点集群中的每个服务节点对应于所述多个网关中的一个网关;在所述第一网关处于可用状态的情况下,向所述第一网关转发所述处理请求。
可选地,所述目标网关,还用于在所述第一网关处于不可用状态的情况下,从所述关联网关中选取出第二网关,其中,所述第二网关处于可用状态,所述第二网关与所述目标服务节点之间具有通信连接;向所述第二网关转发所述处理请求;所述第二网关,与所述目标服务节点通信连接,用于接收所述目标网关转发的所述处理请求,将所述处理请求发送给所述目标服务节点。
可选地,所述***还包括:目标服务器,运行有第三客户端的终端设备,其中,所述终端设备,用于通过所述第三客户端向所述目标服务器发送创建请求,其中,所述创建请求用于请求创建所述目标消息队列,所述目标消息队列包含的分区为第一数量;所述目标服务器,与所述终端设备通信连接,用于接收所述第三客户端发送的所述创建请求;响应所述创建请求,从剩余可用分区中选取出所述第一数量的分区,得到为所述目标消息队列分配的一个或多个分区;使用所述一个或多个分区创建所述目标消息队列。
可选地,所述终端设备,还用于通过所述第三客户端显示目标创建界面,其中,所述目标创建界面为所述目标消息队列的创建界面;通过所述第三客户端检测到对所述目标创建界面执行的第二操作,其中,所述第二操作用于配置所述目标消息队列的消息队列名称,以及所述目标消息队列包含的分区的所述第一数量;通过所述第三客户端检测到对所述目标创建界面执行的第三操作,其中,所述第三操作用于触发创建所述目标消息队列;响应所述第三操作,生成所述创建请求,其中,所述创建请求中携带有所述消息队列名称和所述第一数量。
可选地,终端设备,还用于通过所述第三客户端向所述目标服务器发送分区增加请求,其中,所述分区增加请求用于请求增加所述目标消息队列中包含的分区数量,增加的分区数量为第二数量;所述目标服务器,还用于接收所述分区增加请求;响应所述分区增加请求,从剩余可用分区中选取出所述第二数量的分区,得到所述目标消息队列的待增加分区;使用所述待增加分区更新所述目标消息队列,得到更新后的所述目标消息队列。
根据本申请实施例的又一个方面,还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请实施例的又一个方面,还提供了一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在本申请实施例中,采用使用虚拟地址替换服务节点的网络地址的方式,通过第一网关接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址;通过第一网关将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;通过第一网关将第二响应消息发送给第一客户端,由于使用虚拟地址(例如,自定义端口号)替换发送给客户端的服务节点的网络地址(例如,broker的IP地址),可以实现避免将服务节点的网络地址暴露给客户端的目的,达到了提高服务节点安全性的技术效果,进而解决了相关技术中消息队列的处理方式存在消息易被截获导致的安全性差的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种可选的消息队列的处理方法的硬件环境的示意图;
图2是根据本申请实施例的一种可选的消息队列的处理方法的流程示意图;
图3是根据本申请实施例的一种可选的消息队列的创建界面的示意图;
图4是根据本申请实施例的一种可选的增加分区的配置界面的示意图;
图5是根据本申请实施例的一种可选的变更消息信息的示意图;
图6是根据本申请实施例的一种可选的服务节点调用的示意图;
图7是根据本申请实施例的另一种可选的服务节点调用的示意图;
图8是根据本申请实施例的一种可选的服务逻辑架构的示意图;
图9是根据本申请实施例的一种可选的kafkagateway的示意图;
图10是根据本申请实施例的另一种可选的消息队列的处理方法的流程示意图;
图11是根据本申请实施例的一种可选的消息队列的处理装置的结构框图;
图12是根据本申请实施例的一种可选的电子装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
Kafka:一个分布式消息队列,具有高性能、持久化、多副本备份、横向扩展能力。生产者往队列里写消息,消费者从队列里取出消息进行业务逻辑。
Topic:主题,可以代表消息的类别,发布者发布一条消息必须指定topic,订阅者通过订阅topic就能消费此消息。
Partition:分区,存储消息的物理概念,一个topic可以由多个分区组成。
Producer:消息生产者,指的是:发布消息到topic的进程。
Consumer:消息消费者,指的是:订阅topic获取消息的进程。Kafka中的Consumer采用poll模型。
消息生产者和消息消费者均属于Kafka中的客户端。
Broker:Kafka集群中的服务器(即,服务单元),负责接收客户端的请求,对消息数据进行存储。Kafka是一个分布式集群,其中的每一台服务器都叫做Broker。
GW:Gate Way,网络网关服务,可以提供地址转换等服务。
根据本申请实施例的一个方面,提供了一种消息队列的处理方法。可选地,在本实施例中,上述消息队列的处理方法可以应用于如图1所示的由终端101和服务器103所构成的硬件环境中。如图1所示,服务器103通过网络与终端101进行连接,可用于为终端或终端上安装的客户端提供服务(如游戏服务、应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器103提供数据存储服务,上述网络包括但不限于:广域网、城域网或局域网,终端101并不限定于PC、手机、平板电脑等。
可选地,在本实施例中,上述服务器103可以是分布式消息***中的服务器、云服务器、服务器集群或者类似的设备。在服务器103和中间可以布设有一层或多层网关。本申请实施例的消息队列的处理方法可以由网关来执行,也可以由服务器103执行,还可以由终端101来执行,或者由网关、服务器103和终端101共同执行。其中,终端101执行本申请实施例的消息队列的处理方法也可以是由安装在其上的客户端来执行。
图2是根据本申请实施例的一种可选的消息队列的处理方法的流程示意图,如图2所示,该方法的流程可以包括以下步骤:
步骤S202,通过第一网关接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址;
步骤S204,通过第一网关将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;
步骤S206,通过第一网关将第二响应消息发送给第一客户端。
通过上述步骤S202至步骤S206,通过第一网关接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址;通过第一网关将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;通过第一网关将第二响应消息发送给第一客户端,解决了相关技术中消息队列的处理方式存在消息易被截获导致的安全性差的问题,提高了服务节点的安全性。
在步骤S202提供的技术方案中,通过第一网关接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址。
本实施例中的消息队列的处理方法可以应用于分布式消息***(例如,kafka***)中,该***可以包括:服务节点(例如,broker节点)、网关和客户端。该服务节点可以与网关进行通信连接,用于进行与消息相关的处理。网关分别与服务节点和客户端进行通信连接,可以包括一层或多层网关,该网关可以进行消息的处理和转发。客户端可以与网关进行通信连接,可以用于执行与消息的生产和消费相关的操作。上述客户端可以是消息的生产者和/或消费者。
例如,kafka分为三种操作:生产消息、消费消息和服务管理。
(1)生产消息
生产者生产消息,并将消息发送到kafka集群的topic(主题,存储消息的逻辑概念)中。同一个集群中topic是唯一的,一个topic由至少一个partition(分区,存储消息的物理概念)构成。
(2)消费消息
消费者从kafka集群订阅消息,将消息获取到并将已经消费到的偏移量提交给kafka集群保存。
(3)服务管理
服务管理包括:topic的创建、分区扩容、创建消费组等一系列的管理操作。
对于上述的各个操作,使用者可以通过客户端向不同的服务器发送不同的处理请求,以请求执行上述各个操作。
对于目标服务器节点,目标服务节点可以接收第一客户端的处理请求,该处理请求可以用于请求对目标服务节点中存储的目标消息队列执行第一操作,得到目标处理结果。
在得到目标处理结果之后,目标服务节点可以向第一网关发送第一响应消息,该第一响应消息可以用于指示目标处理结果,在第一响应消息中携带有目标服务节点的目标网络地址。
例如,使用者的处理请求可以是以下之一:MetadataRequest(元数据请求),ProduceRequest(生产请求),FetchRequest(消费请求)、JoinGroupRequest(加入群组请求)。元数据请求可以是获取分区所在broker的VIP(Virtual Internet Protocol,虚拟网际互连协议)地址的请求,生产请求可以是生产元数据的请求。而加入群组请求可以是加入主题的消费者群组的请求。
第一网关可以接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中可以包含有目标服务节点的目标网络地址。
例如,kafka gateway(第一网关)可以接收broker(目标服务节点)对使用者客户端(第一客户端)的处理请求的返回结果(第一响应消息),该返回结果中可以携带有broker的IP信息(目标网络地址,例如,IP地址)。
在步骤S204提供的技术方案中,通过第一网关将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息。
接收到第一响应消息之后,第一网关可以对第一响应消息进行一定的改写,例如,将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到改写后的响应消息(第二响应消息)。
目标虚拟地址(例如,pubservice)可以是一个VIP或者服务域名,可以是自定义端口(例如,9092),自定义端口可以是一个能够被精确识别到的数字。
例如,kafka gateway可以对返回结果进行一定的改写,将broker IP信息改为pubservice地址。
在步骤S206提供的技术方案中,通过第一网关将第二响应消息发送给第一客户端。
第一网关得到第二响应消息之后,可以将第二响应消息返回给第一客户端。第一网关与第一客户端之间可以包含多个网络节点(例如,其他网关,其他类型的网关)。
第一客户端在第二响应消息之后,可以通过其第一客户端的显示界面显示第二响应消息,或者,根据第二响应消息生成的指示信息,该指示信息用于指示对目标消息队列执行第一操作所得到的处理结果。
作为一种可选的实施例,在通过第一网关接收目标服务节点返回的第一响应消息之前,上述方法还包括:
S11,通过目标服务器接收第三客户端发送的创建请求,其中,创建请求用于请求创建目标消息队列,目标消息队列包含的分区为第一数量;
S12,响应创建请求,通过目标服务器从剩余可用分区中选取出第一数量的分区,得到为目标消息队列分配的一个或多个分区;
S13,通过目标服务器使用一个或多个分区创建目标消息队列。
上述目标消息队列可以是目标服务器响应第三客户端发送的创建请求创建的。第三客户端可以是分布式消息***的一个客户端,例如,该***使用者的客户端,或者,其他相关人员的客户端(例如,该***工作人员的客户端)。
目标服务器可以接收第三客户端发送的创建请求,创建请求用于请求创建目标消息队列,目标消息队列包含的分区为第一数量。
分布式消息***可以包含服务节点集群,该服务节点集群可以包含多个服务节点,每个服务节点可以包含多个分区。每个消息队列可以包含多个分区,不同消息队列的分区可以位于相同的服务节点、或者不同的服务节点,同一消息队列的不同分区可以位于相同的服务节点、或者不同的服务节点。各个服务节点中可以包含已被分配的分区,也可以包含未被分配的分区。
响应创建请求,目标服务器首先确定分布式消息***中剩余可用分区,然后从剩余可用分区中选取出第一数量的分区作为目标消息队列的分区,从而使用一个或多个分区创建目标消息队列。
在创建目标消息队列之后,目标服务器可以向第三客户端返回创建成功指示,以便第三客户端可以通过其显示界面显示创建成功指示。
通过本实施例,通过创建请求创建具有一定数量分区的消息队列,可以提高消息队列的创建效率。
作为一种可选的实施例,在通过目标服务器接收第三客户端发送的创建请求之前,上述方法还包括:
S21,通过第三客户端显示目标创建界面,其中,目标创建界面为目标消息队列的创建界面;
S22,通过第三客户端检测到对目标创建界面执行的第二操作,其中,第二操作用于配置目标消息队列的消息队列名称,以及目标消息队列包含的分区的第一数量;
S23,通过第三客户端检测到对目标创建界面执行的第三操作,其中,第三操作用于触发创建目标消息队列;
S24,响应第三操作,通过第三客户端向目标服务器发送创建请求,其中,创建请求中携带有消息队列名称和第一数量。
为了生成创建请求,可以首先通过第三客户端显示目标创建界面,该目标创建界面可以是消息队列的创建界面。当前待创建的消息队列是目标消息队列,因此,目标创建界面为目标消息队列的创建界面。
分布式消息***的第一用户可以对目标创建界面执行的第二操作,该第二操作可以是输入操作,例如,在目标创建界面的第一区域内输入目标消息队列的消息队列名称,在第二区域内输入目标消息队列包含的分区的数量(第一数量)。可选地,还可以在第三区域内输入目标消息队列的备注信息。
第三客户端可以检测到对目标创建界面执行的第二操作,以获取配置的目标消息队列的消息队列名称、以及目标消息队列包含的分区的数量。
第一用户可以对目标创建界面执行的第三操作,该第三操作可以是对目标创建界面的特定按钮(虚拟按钮,“确定”)执行的点击操作,以触发创建目标消息队列。
第三客户端可以检测到对目标创建界面执行的第三操作,响应该第三操作,可以生成上述创建请求,创建请求中携带有消息队列名称和第一数量,并将生成的创建请求发送给目标服务器。
例如,如图3所示,目标创建界面可以包含多个输入区域,分别用于输入待创建的topic的名称、备注信息和分区数,还可以包含两个按钮,用于触发创建topic的按钮(“确定”按钮),用于取消创建topic的按钮(“取消”按钮)。
通过本实施例,通过创建界面进行消息队列的创建,可以提高消息队列创建的效率。
可选地,在本实施例中,可以通过第四客户端显示目标配置界面,其中,目标配置界面为目标消息队列的配置界面;通过第四客户端检测到对目标配置界面执行的第四操作,其中,第四操作用于配置目标消息队列待增加的分区的第二数量;通过第四客户端检测到对目标配置界面执行的第五操作,其中,第五操作用于触发生成分区增加请求;响应第五操作,通过第四客户端向目标服务器发送分区增加请求,分区增加请求用于请求增加目标消息队列中包含的分区数量,增加的分区数量为第二数量。
对于已创建的消息队列,可以通过分区增加请求增加该消息队列的分区。分区增加请求可以是通过第四客户端(与第三客户端可以相同,也可以不同)进行生成的。为了生成分区增加请求,可以首先通过第四客户端显示目标配置界面,该目标配置界面可以是目标消息队列的配置界面。
分布式消息***的第二用户可以对目标配置界面执行的第四操作,该第四操作可以是输入操作,例如,在目标配置界面的第四区域内输入增加的分区数量。第四客户端可以检测到对目标配置界面执行的第四操作,以获取配置的待增加的分区的数量,即,第二数量。
第二用户可以对目标配置界面执行的第五操作,该第五操作可以是对目标配置界面的特定按钮(虚拟按钮,“确定”)执行的点击操作,以触发生成分区增加请求。
第四客户端可以检测到对目标配置界面执行的第五操作,响应该第五操作,可以生成上述分区增加请求,分区增加请求中携带待增加的分区的数量,即,第二数量,并将生成的区增加请求发送给目标服务器。
例如,如图4所示,目标配置界面可以包含一个输入区域,用于待增加的分区数,还可以包含两个按钮,用于触发增加分区数的按钮(“确定”按钮),用于取消增加分区数的按钮(“取消”按钮)。
需要说明的是,第三客户端和第四客户端可以是相同的客户端,也可以是不同的客户端。
作为一种可选的实施例,在通过目标服务器使用一个或多个分区创建目标消息队列之后,上述方法还包括:
S31,通过目标服务器接收第三客户端发送的分区增加请求,其中,分区增加请求用于请求增加目标消息队列中包含的分区数量,增加的分区数量为第二数量;
S32,响应分区增加请求,通过目标服务器从剩余可用分区中选取出第二数量的分区,得到目标消息队列的待增加分区;
S33,通过目标服务器使用待增加分区更新目标消息队列,得到更新后的目标消息队列。
目标服务器可以接收第三客户端(也可以是第四客户端)发送的分区增加请求,分区增加请求用于请求增加目标消息队列中包含的分区数量,增加的分区数量为第二数量。
响应分区增加请求,目标服务器可以首先确定分布式消息***中当前剩余的可用分区,然后从剩余的可用分区中选取出第二数量的分区作为目标消息队列的待增加分区,从而使用待增加分区更新目标消息队列。
在更新目标消息队列之后,目标服务器可以向第三客户端返回分区增加成功指示,以便第三客户端可以通过其显示界面显示分区增加成功指示。
通过本实施例,通过分区增加请求增加消息队列中包含的分区数,可以提高消息队列配置的灵活性。
可选地,在本实施例中,可以通过第五客户端更新目标消息队列中消息的保留时长,以及每个消息的最大消息大小,如图5所示。
作为一种可选的实施例,在通过第一网关接收目标服务节点返回的第一响应消息之前,上述方法还包括:
S41,通过第一网关接收第一客户端的处理请求,其中,处理请求用于请求对目标消息队列执行第一操作,处理请求中携带有目标虚拟地址;
S42,通过第一网关获取与第一客户端对应的第一对象信息,其中,第一对象信息用于表示使用第一客户端的第一对象;
S43,通过第一网关根据第一对象信息确定第一对象具有操作目标消息队列的权限。
处理请求可以是由第一网关接收到的,该处理请求可以用于请求对目标消息队列执行第一操作(例如,生成消息,消费消息,加入目标消息队列的消费组),处理请求中携带有目标虚拟地址。
本实施例中的消息队列的处理方法可以做到Topic级别的访问控制,避免出现信息泄露,例如,元数据管理会记录每一个topic的所有者,在生成和请求时会拿到topic和用户信息,这样可以验证该用户是否有操作该topic的权限。
在接收到处理请求之后,第一网关可以获取与第一客户端对应的第一对象信息,该第一对象信息可以用于表示使用第一客户端的第一对象。
第一网关可以判定第一对象是否具有操作目标消息队列的权限,如果第一对象具有操作目标消息队列的权限,可以将处理请求转发给目标服务节点,如果第一对象不具有操作目标消息队列的权限,则可以拒绝该处理请求。
通过本实施例,通过判定对象是否具有操作消息队列的权限来对用户进行权限验证,可以提高消息队列的安全性,避免出现信息泄露。
作为一种可选的实施例,在获取与第一客户端对应的第一对象信息之前,上述方法还包括:
S51,通过第一网关获取多个网关的流量统计数据,其中,多个网关包括第一网关和第一网关的关联网关,流量统计数据用于指示多个网关中与生产消息和消费消息所对应的总流量;
S52,在总流量小于目标流量阈值的情况下,通过第一网关确定允许处理处理请求。
网关可以对服务进行流量统计分析,统计的可以是多个网关中中与生产消息和消费消息所对应的总流量,多个网关包括第一网关和第一网关的关联网关。例如,kafkagateway可以对生产和消费的流量监控,将各个kafka gateway的流量聚合到一起,当流量未超过阈值时可以继续正常执行后续操作,当流量超过阈值后可以进行流量限速。
在接收到处理请求之后,第一网关可以获取多个网关的流量统计数据,即,多个网关中与生产消息和消费消息所对应的总流量。如果总流量小于目标流量阈值,第一网关可以通过第一网关确定允许处理处理请求。
需要说明的是,流量统计还可以由特定的监控***执行的,多个网关在提供服务之前,可以首先从监控***获取流量统计结果,或者,获取基于流量统计结果发送的是否提供服务的指示信息,以便第一网关基于流量统计结果或者指示信息确定是否提供服务。
通过本实施例,通过对多个网关进行流量统计分析,可以保证整个服务节点集群运行的安全性。
作为一种可选的实施例,在通过第一网关获取多个网关的流量统计数据之后,上述方法还包括:
S61,在总流量大于或者等于目标流量阈值的情况下,通过第一网关向第二客户端发送告警消息,其中,告警消息用于对总流量超过目标流量阈值进行告警,第二客户端为与订阅流量告警的第二对象对应的客户端;
S62,通过第一网关向第一客户端发送拒绝消息,其中,拒绝消息用于指示拒绝处理请求。
如果统计的总流量超过目标流量阈值之后,会进行告警,服务拒绝等,这样可以保证整个集群的平稳健康运行。告警是向订阅告警的用户发送的,以提醒用户需要进行服务扩容等操作,拒绝是向第一客户端发送的,该拒绝中可以携带有拒绝的理由,例如,由于流量超过阈值导致无法提供服务。
当总流量大于或者等于目标流量阈值时,第一网关可以生成告警消息,该告警消息用于对总流量超过目标流量阈值进行告警。第一网关可以将告警消息发送给与订阅流量告警的第二对象对应的客户端(第二客户端)。
可选地,第一网关还可以生成拒绝消息,该拒绝消息用于指示拒绝处理请求,还可以包含拒绝理由的描述信息。第一网关可以将拒绝消息发送给第一客户端。
通过本实施例,通过在流量超过阈值后进行告警、服务拒绝等,可以保证整个服务节点集群运行的安全性。
作为一种可选的实施例,在通过第一网关接收目标服务节点返回的第一响应消息之前,上述方法还包括:
S71,通过目标网关接收第一客户端的处理请求,其中,处理请求用于请求对目标消息队列中的目标消息执行第一操作,目标消息队列包含多个分区,多个分区中的每个分区位于服务节点集群中的一个服务节点中,目标消息存储在服务节点集群中的目标服务节点中;
S72,通过目标网关从多个网关中确定出与目标服务节点对应的第一网关,其中,多个网关包括第一网关和第一网关的关联网关,服务节点集群中的每个服务节点对应于多个网关中的一个网关;
S73,在第一网关处于可用状态的情况下,通过目标网关向第一网关转发处理请求。
分布式消息***可以包含服务节点集群,服务节点集群中可以包含多个服务节点,每个服务节点可以包含多个分区,不同的分区可以属于同一消息队列,也可以属于不同消息队列。
目标消息队列可以包含多个分区,多个分区中的每个分区位于服务节点集群中的一个服务节点中。上述处理请求所请求处理的是目标消息队列中的目标消息,目标消息存储在服务节点集群中的目标服务节点中。
不同客户端的处理请求可以是由目标网关转发到多个网关(kafka gateway)。在接入多个网关之前,根据使用者的特性,在生产消息时可以根据消息的key根据一定算法进行计算,确定该消息应该写入到哪个分区(partition),每个分区的主所有者(leader)是唯一的服务节点。
对于kafka,在加入kafka gateway之前,根据kafka的生产者、消费者的特性,在生产时会根据消息的key根据一定的算法进行计算该消息应该写入到哪个partition,每个partition的主所有者(leader)是唯一的broker。客户端可以根据消息的key确定该消息应该写入的partition,然后确定该partition所在的Broker,从而建立与该Broker的通信连接。
例如,如图6所示,在使用目标网关和kafka gateway之前,kafka Client(生产者或消费者)可以清楚知道每个broker上都有哪些topic和partition,比如,broker 1有topic test(1,2,4),那么,kakfa只需要和broker 1进行一次连接就可以。
在加入多个网关之后,可以由目标网关将处理请求转发到多个网关中存活的网关。每个服务节点可以对应于多个网关中的一个网关,每个网关可以对应于一个或多个服务节点。上述对应关系可以是指:在节点存活(处于可用状态)的情况下,服务节点上的消息的处理请求可以由对应的网关转发至服务节点。
多个网关中的每个网关可以与服务节点集群中的每个服务节点均能进行通信连接,以便在服务节点对应的网关处于不可用状态时,由存活网关进行处理消息的转发。
第一客户端的处理请求可以由目标网关首先接收。目标网关可以从多个网关中确定出与目标服务节点对应的第一网关。在确定出第一网关之后,目标网关可以确定第一网关是否处于可用状态。如果第一网关处于可用状态,目标网关可以向第一网关转发处理请求。
通过本实施例,通过在处理请求之前进行网关可用性检测,可以提高服务提供的准确性和安全性。
作为一种可选的实施例,在通过目标网关从多个网关中确定出与目标服务节点对应的第一网关之后,上述方法还包括:
S81,在第一网关处于不可用状态的情况下,通过目标网关从关联网关中选取出第二网关,其中,第二网关处于可用状态,第二网关与目标服务节点之间具有通信连接;
S82,通过目标网关向第二网关转发处理请求,以通过第二网关与目标服务节点之间的通信连接将处理请求发送给目标服务节点。
如果第一网关处于不可用状态,目标网关可以从关联网关(多个网关中除了第一网关以外的其他网关)中选取出处于可用状态的网关,即,第二网关,该第二网关与目标服务节点之间可以具有通信连接。
在确定出第二网关之后,目标网关可以向第二网关转发处理请求。第二网关可以接收目标网关转发的该处理请求,通过第二网关与目标服务节点之间的通信连接将处理请求发送给目标服务节点。
例如,如图7所示,在引入目标网关和kafka gateway之后,处理消息的转发方式会发生一些变化,kafka gateway可能会出现服务异常或不可用的情况。此时,目标网关就会自动将该服务剔除(例如,通过服务探活功能发现端口不可用),目标网关就会将请求转发到其它的kafka gateway,实现服务的高可用,也就虚线的部分。
通过本实施例,在服务节点对应网关不可用时由目标网关将请求转发到其它可用网关,可以提高服务的可用性。
需要说明的是,kafka的broker节点的增加或减少需要同步给各个使用者,不方便管理。而通过本实施例中的消息队列的处理方法,由于不需要将broker节点的增加或减少等信息同步给各个使用者(向使用者发布的是VIP地址),因此,可以方便进行服务节点管理。
下面结合可选示例对本申请实施例中的消息队列的处理方法进行解释说明。在本示例中,分布式消息***为kafka,服务节点集群为broker集群,消息队列为topic,多个网关为多个kafka gateway,客户端对应于消息的生产者和消费者。目标网关为客户端与kafka gateway之间的网关。
本可选示例中的消息队列的处理方法可以应用于如图8所示的网络架构,在图8中,各个部分的含义如下:
(1)pubservice就是一个vip或服务域名,用于客户端访问kafka集群的服务地址;
(2)目标网关可以提供网络网关服务,用于提供地址转换等服务;
(3)Kafka gateway可以实现kafka协议的代理,用于将客户端的服务请求转发到kafka的broker节点上,同时将kafka broker的结果进行改写返回给客户端;
(4)Kafka指的是Kafka中的broker;
(5)控制台为开通、变更操作的控制台,用于开通云服务,对服务进行一系列的变更等;
(6)OpenAPI(Application Programming Interface,应用程序接口)指的是kafka管理的API,用于进行kafka topic的创建、删除、变更等(对外应用程序接口);
(7)OP(OpenID Provider,OpenID提供者)为一个http(HyperText TransferProtocol,超文本传输协议)服务,用于进行请求鉴权,当鉴权通过之后将请求转发给下一个模块;
(8)inner-api(对内应用程序接口)为一个http服务模块,用于接收OP的转发请求,封装客户端请求调用kafka的接口,实现一系列的操作,如,创建topic,删除topic,修改分区数量,修改集群参数等。
其中,Kafka gateway主要完成生产和消费两个核心功能的实现,兼容原生kafka协议,对客户端无感知。
kafka gateway的处理逻辑可以如图9所示,在图9中,各个部分的含义如下:
(1)监控指的是:监控***,为独立于kafka gateway的服务***;
(2)证书管理指的是:kafka为了安全提供了证书方案,在服务开通时,可以生成证书(数字证书),并将证书下发到每个kafka gateway;
(3)authserver指的是:权限验证模块,用于对用户是否具有访问某个topic的权限进行验证;
(4)流控管理指的是:对生产者消费者进行流量监控,当超过阈值时进行限速。
本可选示例中的消息队列的处理方法所应用到的消息队列的处理***可以兼容kafka协议的代理程序(即,kafka gateway)、一个元数据管理***(对应于图8中的服务管理部分,对集群进行一些管理操作后保存的结果就是元数据管理),同时结合已有的权限管理***,可以做到topic级别的访问控制,避免出现信息泄露,提升***的安全性,同时由于兼容了kafka协议,用户在调用时更加方便、快捷。
如图10所示,本可选示例中的消息队列的处理方法可以包括以下流程步骤:
步骤S1002,客户端首先生成消息的处理请求,将处理请求发送给目标网关。
对于一个消息,客户端首先生成该消息的处理请求,并将该处理请求发送给目标网关,其中,该处理请求中携带有broker的topic信息、分区信息(在客户端计算)、数据key、数据Body、用户信息和请求操作类型等。该处理请求中还可以包含pubservice,在建立与目标网关的连接时,需要使用pubservice。
步骤S1004,目标网关接收到处理请求之后,直接将请求转发到存活的kafkagateway。
步骤S1006,目标网关接收到处理请求之后,直接将请求转发到存活的kafkagateway。
步骤S1008,kafka gateway将处理请求转发到后端kafka的broker。
当kafka gateway收到处理请求后,kafka gateway会进行鉴权、解密等一系列操作,同时对服务进行流量统计分析,当发现超过阈值后会进行告警,服务拒绝等,这样可以保证整个集群的平稳健康运行。
如果没有超过阈值,kafka gateway可以根据消息的请求类型(如,MetadataRequest、ProduceRequest、FetchRequest、JoinGroupRequest),确定要转发到的后端kafka的broker,并将处理请求转发到后端kafka的broker上。
步骤S1010,接收broker对该处理请求的返回结果,kafka gateway改写该返回结果,并将处理结果发送到目标网关。
接收broker对该处理请求的返回结果,对返回结果进sss行一定的改写(如,将broker IP信息改为pubservice地址),并将返回结果发送给目标网关。
对返回结果进行改写可以避免将broker IP地址暴露给客户,同时也解决了客户端到broker网络不同的问题。
步骤S1012,目标网关接收到返回结果,直接可以将返回结果发送给客户端。
通过上述过程,可以完成消息的生产和消费两个过程。
通过本示例,通过gateway访问集群,并集成鉴权服务,更细粒度的保护用户数据隐私安全,可以提高服务安全可靠,解决了kafka集群和使用者在网络不同的情况下的访问。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
根据本申请实施例的另一个方面,还提供了一种用于实施上述消息队列的处理方法的消息队列的处理装置。图11是根据本申请实施例的一种可选的消息队列的处理装置的结构框图,如图11所示,该装置可以包括:
(1)第一接收单元1102,用于接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址;
(2)替换单元1104,与第一接收单元1102相连,用于将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;
(3)第一发送单元1106,与替换单元1104相连,用于将第二响应消息发送给第一客户端。
需要说明的是,该实施例中的第一接收单元1102可以用于执行上述步骤S202,该实施例中的替换单元1104可以用于执行上述步骤S204,该实施例中的第一发送单元1106可以用于执行上述步骤S206。
通过上述模块,通过第一网关接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址;通过第一网关将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;通过第一网关将第二响应消息发送给第一客户端,解决了相关技术中消息队列的处理方式存在消息易被截获导致的安全性差的问题,提高了服务节点的安全性。
作为一种可选的实施例,上述装置还包括:
第二接收单元,用于接收第一客户端的处理请求,其中,处理请求用于请求对目标消息队列执行第一操作,处理请求中携带有目标虚拟地址;
第一获取单元,用于获取与第一客户端对应的第一对象信息,其中,第一对象信息用于表示使用第一客户端的第一对象;
第一确定单元,用于根据第一对象信息确定第一对象具有操作目标消息队列的权限。
作为一种可选的实施例,上述装置还包括:
第二获取单元,用于在获取与第一客户端对应的第一对象信息之前,获取多个网关的流量统计数据,其中,多个网关包括第一网关和第一网关的关联网关,流量统计数据用于指示多个网关中与生产消息和消费消息所对应的总流量;
第二确定单元,用于在总流量小于目标流量阈值的情况下,确定允许处理处理请求。
作为一种可选的实施例,上述装置还包括:
第三发送单元,用于在通过第一网关获取多个网关的流量统计数据之后,在总流量大于或者等于目标流量阈值的情况下,向第二客户端发送告警消息,其中,告警消息用于对总流量超过目标流量阈值进行告警,第二客户端为与订阅流量告警的第二对象对应的客户端;
第四发送单元,用于向第一客户端发送拒绝消息,其中,拒绝消息用于指示拒绝处理请求。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
根据本申请实施例的又一个方面,还提供了一种用于实施上述消息队列的处理方法的消息队列的处理***。该***可以包括:第一网关和服务节点集群,所述服务节点集群中存储有目标消息队列,其中,
(1)服务节点集群中的目标服务节点,用于响应第一客户端的处理请求,对目标消息队列执行第一操作,得到目标处理结果;向第一网关返回的第一响应消息,其中,第一响应消息用于指示目标处理结果,第一响应消息中携带有目标服务节点的目标网络地址;
(2)第一网关,与服务节点集群中的目标服务节点通信连接,用于接收目标服务节点返回的第一响应消息;将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;将第二响应消息发送给第一客户端。
作为一种可选的实施例,第一网关,还用于接收第一客户端的处理请求,其中,处理请求用于请求对目标消息队列执行第一操作,处理请求中携带有目标虚拟地址;获取与第一客户端对应的第一对象信息,其中,第一对象信息用于表示使用第一客户端的第一对象;根据第一对象信息确定第一对象具有操作目标消息队列的权限。
作为一种可选的实施例,第一网关,还用于在获取与第一客户端对应的第一对象信息之前,获取多个网关的流量统计数据,其中,多个网关包括第一网关和第一网关的关联网关,流量统计数据用于指示多个网关中与生产消息和消费消息所对应的总流量;在总流量小于目标流量阈值的情况下,确定允许处理处理请求。
作为一种可选的实施例,第一网关,还用于在通过第一网关获取多个网关的流量统计数据之后,在总流量大于或者等于目标流量阈值的情况下,向第二客户端发送告警消息,其中,告警消息用于对总流量超过目标流量阈值进行告警,第二客户端为与订阅流量告警的第二对象对应的客户端;向第一客户端发送拒绝消息,其中,拒绝消息用于指示拒绝处理请求。
作为一种可选的实施例,上述***还包括:目标网关,第一网关的关联网关,其中,
目标网关,与第一网关和关联网关分别通信连接,用于接收第一客户端的处理请求,其中,处理请求用于请求对目标消息队列中的目标消息执行第一操作,目标消息队列包含多个分区,多个分区中的每个分区位于服务节点集群中的一个服务节点中,目标消息存储在目标服务节点中;从多个网关中确定出与目标服务节点对应的第一网关,其中,多个网关包括第一网关和关联网关,服务节点集群中的每个服务节点对应于多个网关中的一个网关;在第一网关处于可用状态的情况下,向第一网关转发处理请求。
作为一种可选的实施例,目标网关,还用于在第一网关处于不可用状态的情况下,从关联网关中选取出第二网关,其中,第二网关处于可用状态,第二网关与目标服务节点之间具有通信连接;向第二网关转发处理请求;第二网关,与目标服务节点通信连接,用于接收目标网关转发的处理请求,将处理请求发送给目标服务节点。
作为一种可选的实施例,上述***还包括:目标服务器,运行有第三客户端的终端设备,其中,
终端设备,用于通过第三客户端向目标服务器发送创建请求,其中,创建请求用于请求创建目标消息队列,目标消息队列包含的分区为第一数量;
目标服务器,与终端设备通信连接,用于接收第三客户端发送的创建请求;响应创建请求,从剩余可用分区中选取出第一数量的分区,得到为目标消息队列分配的一个或多个分区;使用一个或多个分区创建目标消息队列。
作为一种可选的实施例,终端设备,还用于通过第三客户端显示目标创建界面,其中,目标创建界面为目标消息队列的创建界面;通过第三客户端检测到对目标创建界面执行的第二操作,其中,第二操作用于配置目标消息队列的消息队列名称,以及目标消息队列包含的分区的第一数量;通过第三客户端检测到对目标创建界面执行的第三操作,其中,第三操作用于触发创建目标消息队列;响应第三操作,生成创建请求,其中,创建请求中携带有消息队列名称和第一数量。
作为一种可选的实施例,终端设备,还用于通过第三客户端向目标服务器发送分区增加请求,其中,分区增加请求用于请求增加目标消息队列中包含的分区数量,增加的分区数量为第二数量;目标服务器,还用于接收分区增加请求;响应分区增加请求,从剩余可用分区中选取出第二数量的分区,得到目标消息队列的待增加分区;使用待增加分区更新目标消息队列,得到更新后的目标消息队列。
根据本申请实施例的又一个方面,还提供了一种用于实施上述消息队列的处理方法的电子装置,该电子装置可以是网关、服务器、终端、或者其组合。
图12是根据本申请实施例的一种可选的电子装置的结构框图,如图12所示,该电子装置包括存储器1202和处理器1204,该存储器1202中存储有计算机程序,该处理器1204被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,通过第一网关接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址;
S2,通过第一网关将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;
S3,通过第一网关将第二响应消息发送给第一客户端。
其中,存储器1202可用于存储软件程序以及模块,如本发明实施例中的消息队列的处理方法和装置对应的程序指令/模块,处理器1204通过运行存储在存储器1202内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述消息队列的处理方法。存储器1202可包括高速随机存储器,还可以包括非易失性存储器,如一个或多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1202可进一步包括相对于处理器1204远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
作为一种示例,如图12所示,上述存储器1202中可以但不限于包括上述消息队列的处理装置中的第一接收单元1102、替换单元1104及第一发送单元1106。此外,还可以包括但不限于上述消息队列的处理装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1206用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1206包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1206为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子装置还包括:连接总线1208,用于连接上述电子装置中的各个模块部件。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本领域普通技术人员可以理解,图12所示的结构仅为示意,实施上述消息队列的处理方法的设备可以是终端设备,该终端设备可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图12其并不对上述电子装置的结构造成限定。例如,终端设备还可包括比图12中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图12所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
根据本申请实施例的又一个方面,还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行消息队列的处理方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,通过第一网关接收目标服务节点返回的第一响应消息,其中,第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,第一响应消息中携带有目标服务节点的目标网络地址;
S2,通过第一网关将第一响应消息中的目标网络地址替换为与目标消息队列对应的目标虚拟地址,得到第二响应消息;
S3,通过第一网关将第二响应消息发送给第一客户端。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例中对此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例中所提供的方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (13)
1.一种消息队列的处理方法,其特征在于,包括:
通过第一网关接收目标服务节点返回的第一响应消息,其中,所述第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,所述第一响应消息中携带有所述目标服务节点的目标网络地址;
通过所述第一网关将所述第一响应消息中的所述目标网络地址替换为与所述目标消息队列对应的目标虚拟地址,得到第二响应消息;
通过所述第一网关将所述第二响应消息发送给所述第一客户端。
2.根据权利要求1所述的方法,其特征在于,在通过所述第一网关接收所述目标服务节点返回的所述第一响应消息之前,所述方法还包括:
通过所述第一网关接收所述第一客户端的所述处理请求,其中,所述处理请求用于请求对所述目标消息队列执行所述第一操作,所述处理请求中携带有所述目标虚拟地址;
通过所述第一网关获取与所述第一客户端对应的第一对象信息,其中,所述第一对象信息用于表示使用所述第一客户端的第一对象;
通过所述第一网关根据所述第一对象信息确定所述第一对象具有操作所述目标消息队列的权限。
3.根据权利要求2所述的方法,其特征在于,在获取与所述第一客户端对应的所述第一对象信息之前,所述方法还包括:
通过所述第一网关获取多个网关的流量统计数据,其中,所述多个网关包括所述第一网关和所述第一网关的关联网关,所述流量统计数据用于指示所述多个网关中与生产消息和消费消息所对应的总流量;
在所述总流量小于目标流量阈值的情况下,通过所述第一网关确定允许处理所述处理请求。
4.根据权利要求3所述的方法,其特征在于,在通过所述第一网关获取所述多个网关的所述流量统计数据之后,所述方法还包括:
在所述总流量大于或者等于所述目标流量阈值的情况下,通过所述第一网关向第二客户端发送告警消息,其中,所述告警消息用于对所述总流量超过所述目标流量阈值进行告警,所述第二客户端为与订阅流量告警的第二对象对应的客户端;
通过所述第一网关向所述第一客户端发送拒绝消息,其中,所述拒绝消息用于指示拒绝所述处理请求。
5.根据权利要求1所述的方法,其特征在于,在通过所述第一网关接收所述目标服务节点返回的所述第一响应消息之前,所述方法还包括:
通过目标网关接收所述第一客户端的所述处理请求,其中,所述处理请求用于请求对所述目标消息队列中的目标消息执行所述第一操作,所述目标消息队列包含多个分区,所述多个分区中的每个分区位于服务节点集群中的一个服务节点中,所述目标消息存储在所述服务节点集群中的所述目标服务节点中;
通过所述目标网关从多个网关中确定出与所述目标服务节点对应的所述第一网关,其中,所述多个网关包括所述第一网关和所述第一网关的关联网关,所述服务节点集群中的每个服务节点对应于所述多个网关中的一个网关;
在所述第一网关处于可用状态的情况下,通过所述目标网关向所述第一网关转发所述处理请求。
6.根据权利要求5所述的方法,其特征在于,在通过所述目标网关从所述多个网关中确定出与所述目标服务节点对应的所述第一网关之后,所述方法还包括:
在所述第一网关处于不可用状态的情况下,通过所述目标网关从所述关联网关中选取出第二网关,其中,所述第二网关处于可用状态,所述第二网关与所述目标服务节点之间具有通信连接;
通过所述目标网关向所述第二网关转发所述处理请求,以通过所述第二网关与所述目标服务节点之间的通信连接将所述处理请求发送给所述目标服务节点。
7.根据权利要求1至6中任一项所述的方法,其特征在于,在通过所述第一网关接收所述目标服务节点返回的所述第一响应消息之前,所述方法还包括:
通过目标服务器接收第三客户端发送的创建请求,其中,所述创建请求用于请求创建所述目标消息队列,所述目标消息队列包含的分区为第一数量;
响应所述创建请求,通过所述目标服务器从剩余可用分区中选取出所述第一数量的分区,得到为所述目标消息队列分配的一个或多个分区;
通过所述目标服务器使用所述一个或多个分区创建所述目标消息队列。
8.根据权利要求7所述的方法,其特征在于,在通过所述目标服务器接收所述第三客户端发送的所述创建请求之前,所述方法还包括:
通过所述第三客户端显示目标创建界面,其中,所述目标创建界面为所述目标消息队列的创建界面;
通过所述第三客户端检测到对所述目标创建界面执行的第二操作,其中,所述第二操作用于配置所述目标消息队列的消息队列名称,以及所述目标消息队列包含的分区的所述第一数量;
通过所述第三客户端检测到对所述目标创建界面执行的第三操作,其中,所述第三操作用于触发创建所述目标消息队列;
响应所述第三操作,通过所述第三客户端向所述目标服务器发送所述创建请求,其中,所述创建请求中携带有所述消息队列名称和所述第一数量。
9.根据权利要求7所述的方法,其特征在于,在通过所述目标服务器使用所述一个或多个分区创建所述目标消息队列之后,所述方法还包括:
通过所述目标服务器接收所述第三客户端发送的分区增加请求,其中,所述分区增加请求用于请求增加所述目标消息队列中包含的分区数量,增加的分区数量为第二数量;
响应所述分区增加请求,通过所述目标服务器从剩余可用分区中选取出所述第二数量的分区,得到所述目标消息队列的待增加分区;
通过所述目标服务器使用所述待增加分区更新所述目标消息队列,得到更新后的所述目标消息队列。
10.一种消息队列的处理装置,其特征在于,包括:
第一接收单元,用于接收目标服务节点返回的第一响应消息,其中,所述第一响应消息用于指示响应第一客户端的处理请求,对目标消息队列执行第一操作所得到的处理结果,所述第一响应消息中携带有所述目标服务节点的目标网络地址;
替换单元,用于将所述第一响应消息中的所述目标网络地址替换为与所述目标消息队列对应的目标虚拟地址,得到第二响应消息;
第一发送单元,用于将所述第二响应消息发送给所述第一客户端。
11.一种消息队列的处理***,其特征在于,包括:第一网关和服务节点集群,所述服务节点集群中存储有目标消息队列,其中,
所述服务节点集群中的目标服务节点,用于响应第一客户端的处理请求,对所述目标消息队列执行第一操作,得到目标处理结果;向所述第一网关返回的第一响应消息,其中,所述第一响应消息用于指示所述目标处理结果,所述第一响应消息中携带有所述目标服务节点的目标网络地址;
所述第一网关,与所述服务节点集群中的目标服务节点通信连接,用于接收所述目标服务节点返回的第一响应消息;将所述第一响应消息中的所述目标网络地址替换为与所述目标消息队列对应的目标虚拟地址,得到第二响应消息;将所述第二响应消息发送给所述第一客户端。
12.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至9中任一项中所述的方法。
13.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求1至9中任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010881279.4A CN112073398B (zh) | 2020-08-27 | 2020-08-27 | 消息队列的处理方法、装置和***、存储介质和电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010881279.4A CN112073398B (zh) | 2020-08-27 | 2020-08-27 | 消息队列的处理方法、装置和***、存储介质和电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112073398A true CN112073398A (zh) | 2020-12-11 |
CN112073398B CN112073398B (zh) | 2022-10-11 |
Family
ID=73659160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010881279.4A Active CN112073398B (zh) | 2020-08-27 | 2020-08-27 | 消息队列的处理方法、装置和***、存储介质和电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112073398B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965735A (zh) * | 2021-02-25 | 2021-06-15 | 北京奇艺世纪科技有限公司 | 模型更新方法、装置、设备及计算机可读介质 |
CN114095502A (zh) * | 2021-10-08 | 2022-02-25 | 浙江吉利控股集团有限公司 | 一种业务处理方法、***、装置及介质 |
CN114827156A (zh) * | 2022-03-28 | 2022-07-29 | 阿里巴巴(中国)有限公司 | 消息调度的方法、装置、设备及存储介质 |
CN115296958A (zh) * | 2022-06-28 | 2022-11-04 | 青岛海尔科技有限公司 | 设备控制任务的分发方法、装置、存储介质及电子装置 |
CN115296945A (zh) * | 2022-06-28 | 2022-11-04 | 青岛海尔科技有限公司 | 设备的控制方法、***和装置、存储介质及电子装置 |
CN115396494A (zh) * | 2022-08-19 | 2022-11-25 | 北京银丰新融科技开发有限公司 | 基于流式计算的实时监控方法及*** |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102572139A (zh) * | 2011-12-15 | 2012-07-11 | 中兴通讯股份有限公司 | 一种信息处理的方法、业务处理方法及装置 |
CN105938459A (zh) * | 2015-03-02 | 2016-09-14 | Arm 有限公司 | 处理地址转换请求 |
CN106130882A (zh) * | 2016-07-13 | 2016-11-16 | 北京百度网讯科技有限公司 | 用于传输消息的方法和装置 |
CN109831511A (zh) * | 2019-02-18 | 2019-05-31 | 华为技术有限公司 | 调度内容分发网络cdn边缘节点的方法及设备 |
CN109981803A (zh) * | 2017-12-27 | 2019-07-05 | 中兴通讯股份有限公司 | 业务请求处理方法及装置 |
CN111083009A (zh) * | 2019-11-29 | 2020-04-28 | 北京云测信息技术有限公司 | 一种抓包方法、装置和移动终端 |
EP3697039A1 (en) * | 2019-02-15 | 2020-08-19 | Juniper Networks, Inc. | Load-balanced endpoints selection for client devices accessing the endpoints via a network |
-
2020
- 2020-08-27 CN CN202010881279.4A patent/CN112073398B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102572139A (zh) * | 2011-12-15 | 2012-07-11 | 中兴通讯股份有限公司 | 一种信息处理的方法、业务处理方法及装置 |
CN105938459A (zh) * | 2015-03-02 | 2016-09-14 | Arm 有限公司 | 处理地址转换请求 |
CN106130882A (zh) * | 2016-07-13 | 2016-11-16 | 北京百度网讯科技有限公司 | 用于传输消息的方法和装置 |
CN109981803A (zh) * | 2017-12-27 | 2019-07-05 | 中兴通讯股份有限公司 | 业务请求处理方法及装置 |
EP3697039A1 (en) * | 2019-02-15 | 2020-08-19 | Juniper Networks, Inc. | Load-balanced endpoints selection for client devices accessing the endpoints via a network |
CN109831511A (zh) * | 2019-02-18 | 2019-05-31 | 华为技术有限公司 | 调度内容分发网络cdn边缘节点的方法及设备 |
CN111083009A (zh) * | 2019-11-29 | 2020-04-28 | 北京云测信息技术有限公司 | 一种抓包方法、装置和移动终端 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965735A (zh) * | 2021-02-25 | 2021-06-15 | 北京奇艺世纪科技有限公司 | 模型更新方法、装置、设备及计算机可读介质 |
CN112965735B (zh) * | 2021-02-25 | 2023-07-14 | 北京奇艺世纪科技有限公司 | 模型更新方法、装置、设备及计算机可读介质 |
CN114095502A (zh) * | 2021-10-08 | 2022-02-25 | 浙江吉利控股集团有限公司 | 一种业务处理方法、***、装置及介质 |
CN114095502B (zh) * | 2021-10-08 | 2023-11-03 | 浙江吉利控股集团有限公司 | 一种业务处理方法、***、装置及介质 |
CN114827156A (zh) * | 2022-03-28 | 2022-07-29 | 阿里巴巴(中国)有限公司 | 消息调度的方法、装置、设备及存储介质 |
CN114827156B (zh) * | 2022-03-28 | 2023-12-01 | 阿里巴巴(中国)有限公司 | 消息调度的方法、装置、设备及存储介质 |
CN115296958A (zh) * | 2022-06-28 | 2022-11-04 | 青岛海尔科技有限公司 | 设备控制任务的分发方法、装置、存储介质及电子装置 |
CN115296945A (zh) * | 2022-06-28 | 2022-11-04 | 青岛海尔科技有限公司 | 设备的控制方法、***和装置、存储介质及电子装置 |
CN115296945B (zh) * | 2022-06-28 | 2024-03-22 | 青岛海尔科技有限公司 | 设备的控制方法、***和装置、存储介质及电子装置 |
CN115296958B (zh) * | 2022-06-28 | 2024-03-22 | 青岛海尔科技有限公司 | 设备控制任务的分发方法、装置、存储介质及电子装置 |
CN115396494A (zh) * | 2022-08-19 | 2022-11-25 | 北京银丰新融科技开发有限公司 | 基于流式计算的实时监控方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN112073398B (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112073398B (zh) | 消息队列的处理方法、装置和***、存储介质和电子装置 | |
US11768802B2 (en) | Method and system for applying data retention policies in a computing platform | |
CN111475728B (zh) | 云资源信息搜索方法、装置、设备及存储介质 | |
US9998340B2 (en) | Method and system to monitor a network | |
CN107979525A (zh) | 一种红包发放方法、设备以及介质 | |
CN108696399B (zh) | 业务服务的测试方法和装置 | |
CN107086984A (zh) | 一种获取和生成验证码的方法、终端及服务器 | |
US11616763B2 (en) | Secure anonymous communications methods and apparatus | |
CN103098042A (zh) | 用于社交集合的***和方法 | |
CN106911687A (zh) | 一种页面构建控制方法和装置 | |
CN109521956A (zh) | 一种基于区块链的云存储方法、装置、设备及存储介质 | |
CN108737080A (zh) | 密码的存储方法、装置、***及设备 | |
CN111061685A (zh) | 日志查询方法、装置、节点设备及存储介质 | |
CN109697370A (zh) | 数据库数据加解密方法、装置、计算机设备和存储介质 | |
CN115118705A (zh) | 一种基于微服务的工业边缘管控平台 | |
CN109495378A (zh) | 检测异常帐号的方法、装置、服务器及存储介质 | |
CN110933152B (zh) | 一种预热方法、装置、***及电子设备 | |
CN112399392A (zh) | 居家护理终端的通信连接方法、装置、设备和存储介质 | |
CN111510413B (zh) | 数据的处理方法、装置及设备 | |
CN112153146B (zh) | 操作通知方法和装置、存储介质和电子装置 | |
CN108345508A (zh) | 接口调用测试方法和装置 | |
CN108289056A (zh) | 分享动态图表的方法、装置以及计算设备 | |
CN112711518B (zh) | 一种日志上传方法和装置 | |
CN116662016B (zh) | 端口切换方法、装置、计算机设备、存储介质和程序产品 | |
JP7465909B2 (ja) | 相談サービス提供方法及び装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |