CN116846897A - 一种消息复制方法、装置、电子设备及可读存储介质 - Google Patents
一种消息复制方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN116846897A CN116846897A CN202310730010.XA CN202310730010A CN116846897A CN 116846897 A CN116846897 A CN 116846897A CN 202310730010 A CN202310730010 A CN 202310730010A CN 116846897 A CN116846897 A CN 116846897A
- Authority
- CN
- China
- Prior art keywords
- message
- server
- task
- instance
- replication
- 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 62
- 230000010076 replication Effects 0.000 claims abstract description 218
- 230000008569 process Effects 0.000 abstract description 11
- 238000012545 processing Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- 238000007689 inspection Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000036541 health Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/10015—Access to distributed or replicated servers, e.g. using brokers
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/61—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供了一种消息复制方法、装置、电子设备及存储介质,所述方法包括:获取消息复制任务的任务配置参数;任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;基于任务配置参数,从服务器集群中确定用于执行消息复制任务的第一服务器;基于任务配置参数,在第一服务器部署第一消息复制实例;其中,第一消息复制实例用于将待复制消息标识信息从消息源地址复制到消息目标地址。能够将消息复制任务分配到服务器集群中的不同服务器,减少消息复制实例在运行过程中的相互影响,有助于提升消息复制任务的完成效率,还能在一定程度上提升用户在服务器集群中分配消息复制任务的效率。
Description
技术领域
本申请实施例涉及数据处理领域,尤其涉及一种消息复制方法、装置、电子设备及计算机可读存储介质。
背景技术
消息队列(Message Queue,MQ)是一种进程间通信或同一进程的不同线程间的通信方式。在某些情况下,可能需要对消息进行复制操作,例如,存储消息队列的数据中心存在发生故障的可能,因此进行容灾设置,可以将该数据中心存储的消息队列整体跨区域复制到另一个数据中心进行备份,以提升消息队列的安全性。
相关技术中,大部分消息队列软件会提供简单的复制工具,用户可以在服务器上安装该复制工具,并指定待复制消息、消息源地址和消息目标地址,然后启动复制工具,将待复制消息从消息源地址复制到消息目标地址。
但是,在目前的实际业务场景中,根据不同的业务需求,通常会设置大量的消息队列,导致需要执行较多的消息复制任务,这些消息复制任务会抢占服务器资源,造成服务器拥堵,导致消息复制任务的完成效率较低。
发明内容
本申请实施例提供一种消息复制方法、装置、电子设备及计算机可读存储介质,以解决相关技术中消息复制任务完成效率较低的问题。
第一方面,本申请实施例提供了一种消息复制方法,所述方法包括:
获取消息复制任务的任务配置参数;所述任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;
基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器;
基于所述任务配置参数,在所述第一服务器部署第一消息复制实例;其中,所述第一消息复制实例用于将所述待复制消息标识信息从所述消息源地址复制到所述消息目标地址。
可选地,所述任务配置参数还包括任务优先级,所述基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器,包括:
根据所述服务器集群中各个服务器分别对应的服务器优先级,确定所述任务优先级对应的匹配服务器;
获取所述匹配服务器的实例运行数量和实例运行上限,将所述实例运行数量小于所述实例运行上限的匹配服务器确定为所述第一服务器。
可选地,所述方法还包括:
基于所述任务配置参数确定所述消息复制任务对应的资源需求;其中,所述资源需求包括算力需求、存储需求、网络需求中的任一项;
基于所述资源需求和所述匹配服务器的服务器性能确定所述实例运行上限。
可选地,所述方法还包括:
在各个匹配服务器的实例运行数量均小于实例运行上限的情况下,发送提示信息。
可选地,所述方法还包括:
获取所述服务器集群中各个服务器的服务器性能;其中,所述服务器性能包括运算性能、存储性能、网络性能中的任一项;
基于所述各个服务器的服务器性能确定所述各个服务器分别对应的服务器优先级。
可选地,所述任务配置参数包括实例数量,所述方法还包括:
在所述实例数量大于1的情况下,基于所述任务配置参数,从所述服务器集群中确定用于执行所述消息复制任务的第二服务器;
基于所述任务配置参数,在所述第二服务器部署第二消息复制实例;其中,所述第二消息复制实例用于执行所述消息复制任务。
可选地,所述基于所述任务配置参数,从所述服务器集群中确定用于执行所述消息复制任务的第二服务器,包括:
在所述第一服务器的实例运行数量小于实例运行上限的情况下,将所述第一服务器确定为所述第二服务器;
在所述第一服务器的实例运行数量大于或等于实例运行上限的情况下,从其他服务器中确定所述第二服务器;其中,所述其他服务器表示所述服务器集群中除所述第一服务器之外的服务器。
可选地,所述方法还包括:
以第一时间长度为周期,获取所述服务器集群中各个消息复制实例的运行状态信息;
在所述消息复制实例的最新运行状态信息的获取时刻距离当前时刻大于或等于第二时间长度的情况下,终止所述消息复制实例;其中,所述第二时间长度大于所述第一时间长度。
第二方面,本申请实施例提供了一种消息复制装置,所述装置包括:
获取模块,用于获取消息复制任务的任务配置参数;所述任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;
第一确定模块,用于基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器;
第一部署模块,用于基于所述任务配置参数,在所述第一服务器部署第一消息复制实例;其中,所述第一消息复制实例用于将所述待复制消息标识信息从所述消息源地址复制到所述消息目标地址。
可选地,所述任务配置参数还包括任务优先级,所述第一确定模块包括:
匹配服务器子模块,用于根据所述服务器集群中各个服务器分别对应的服务器优先级,确定所述任务优先级对应的匹配服务器;
第一服务器子模块,用于获取所述匹配服务器的实例运行数量和实例运行上限,将所述实例运行数量小于所述实例运行上限的匹配服务器确定为所述第一服务器。
可选地,所述装置还包括:
资源需求模块,用于基于所述任务配置参数确定所述消息复制任务对应的资源需求;其中,所述资源需求包括算力需求、存储需求、网络需求中的任一项;
实例运行上限模块,用于基于所述资源需求和所述匹配服务器的服务器性能确定所述实例运行上限。
可选地,所述装置还包括:
提示模块,用于在各个匹配服务器的实例运行数量均小于实例运行上限的情况下,发送提示信息。
可选地,所述装置还包括:
服务器性能模块,用于获取所述服务器集群中各个服务器的服务器性能;其中,所述服务器性能包括运算性能、存储性能、网络性能中的任一项;
服务器优先级模块,用于基于所述各个服务器的服务器性能确定所述各个服务器分别对应的服务器优先级。
可选地,所述任务配置参数包括实例数量,所述装置还包括:
第二确定模块,用于在所述实例数量大于1的情况下,基于所述任务配置参数,从所述服务器集群中确定用于执行所述消息复制任务的第二服务器;
第二部署模块,用于基于所述任务配置参数,在所述第二服务器部署第二消息复制实例;其中,所述第二消息复制实例用于执行所述消息复制任务。
可选地,所述第二确定模块包括:
第二服务器确定子模块,用于在所述第一服务器的实例运行数量小于实例运行上限的情况下,将所述第一服务器确定为所述第二服务器;
第二服务器选取子模块,用于在所述第一服务器的实例运行数量大于或等于实例运行上限的情况下,从其他服务器中确定所述第二服务器;其中,所述其他服务器表示所述服务器集群中除所述第一服务器之外的服务器。
可选地,所述装置还包括:
状态获取模块,用于以第一时间长度为周期,获取所述服务器集群中各个消息复制实例的运行状态信息;
终止模块,用于在所述消息复制实例的最新运行状态信息的获取时刻距离当前时刻大于或等于第二时间长度的情况下,终止所述消息复制实例;其中,所述第二时间长度大于所述第一时间长度。
第三方面,本申请实施例还提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现所述的消息复制方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行所述的消息复制方法。
在本申请实施例中,包括:获取消息复制任务的任务配置参数;任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;基于任务配置参数,从服务器集群中确定用于执行消息复制任务的第一服务器;基于任务配置参数,在第一服务器部署第一消息复制实例;其中,第一消息复制实例用于将待复制消息标识信息从消息源地址复制到消息目标地址。相较于相关技术中直接在服务器上配置并运行消息复制工具的方式,可以解析用户在任何地方生成的消息复制任务,并根据消息复制任务中的任务配置参数,从服务器集群中确定出适合执行该消息复制任务的第一服务器,在第一服务器部署并执行对应的消息复制实例以完成消息复制任务,通过本申请上述方案,能够将消息复制任务分配到服务器集群中的不同服务器,减少消息复制实例在运行过程中的相互影响,有助于提升消息复制任务的完成效率,还能在一定程度上提升用户在服务器集群中分配消息复制任务的效率。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本申请实施例提供的一种消息复制的步骤流程图;
图2是本申请实施例提供的另一种消息复制的步骤流程图;
图3是本申请实施例提供的一种消息复制实例部署示意图;
图4是本申请实施例提供的另一种消息复制实例部署示意图;
图5是本申请实施例提供的一种健康巡检流程图;
图6是本申请实施例提供的一种消息复制装置结构图;
图7是本申请实施例提供的一个实施例的电子设备的逻辑框图;
图8是本申请实施例提供的另一个实施例的电子设备的逻辑框图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施例。虽然附图中显示了本申请的示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
图1是本申请实施例提供的一种消息复制方法的步骤流程图,如图1所示,该方法包括:
步骤101,获取消息复制任务的任务配置参数;所述任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址。
在本申请实施例中,消息复制任务表示用于对消息队列中的消息(Message)进行复制的任务,其中,消息队列是一种应用程序间通信的方式,能够在不同组件或***之间异步传递消息,可以帮助解耦消息生产者和消息消费者,从而提高***的可靠性、可伸缩性和可维护性。上述消息队列可以包括但不限于RabbitMQ、Apache Kafka、Redis等,本申请实施例不做具体限定。
为了能够对消息队列中的消息进行备份、跨数据中心的数据同步、数据迁移、多数据中心的数据处理等操作,可以对消息队列中的消息进行复制操作。具体地,用户可以根据复制需求生成对应的消息复制任务,并将消息复制任务放入任务队列中,该消息复制任务可以对应有任务配置参数,任务配置参数可以包括待复制消息标识信息、消息源地址和消息目标地址。其中,消息标识信息用于指示需要复制的消息,可以包括但不限于消息主题标识、消息队列标识或消息标识等;消息源地址用于指示待复制消息所处的位置,可以包括但不限于存储待复制消息的消息队列地址、待复制消息所处的服务器地址,消息队列所在的消息队列集群等;消息目标地址用于指示需要将待复制消息复制到的具***置,可以包括目标网络地址、第一服务器地址、目标消息队列地址等;需要说明的是,在消息目标地址包含目标消息队列地址的情况下,待复制消息标识信息可以指示一个小于消息队列的消息结构,例如一个消息队列中的某个消息主题、某个消息主题中的多个具体消息等。
具体地,可以从任务队列中获取消息复制任务及其对应的任务配置参数,上述获取方式可以是先获取任务队列中存在时间最长的消息复制任务,以避免任务队列中的消息复制任务排队时间过长;也可以是先获取任务队列中存在时间最短的消息复制任务,以及时处理最新产生的消息复制任务,本申请实施例不做具体限定。
进一步地,上述消息复制任务也可以由***自动生成,并由***自动配置对应的任务配置参数。具体地,任务生成规则可以包括复制任务触发条件,以及与之对应的复制任务生成方式,可以基于任务触发条件指定监控消息队列的状态,并在指定消息队列的状态满足任务触发条件时,基于任务触发条件对应的复制任务生成方式生成消息复制任务。
示例性地,复制任务触发条件可以包括消息队列A中的消息主题数量增加,该复制任务触发条件对应的复制任务生成方式可以包括根据消息队列A中新增消息主题生成待复制消息标识信息、获取该新增消息主题的地址作为消息源地址、获取预设的消息目标地址,基于上述待复制消息标识信息、消息源地址和消息目标地址生成消息复制任务并配置相应的任务配置参数。
步骤102,基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器。
在实际生产环境中,往往需要使用大量的消息队列以满足不同的功能需求,导致同时会产生大量的消息复制任务,而一台服务器的能力是有限的,因此,可以通过服务器集群来处理这些海量的消息复制任务。为了避免服务器拥堵,保证消息复制任务的完成效率,可以在获取到任务配置参数后,根据任务配置参数从服务器集群中确定用于执行该任务配置参数对应的消息复制任务的第一服务器。
具体地,可以预先设置待复制消息标识信息、消息源地址、消息目标地址和服务器集群中服务器之间的对应关系,从而在得到任务配置参数后,可以通过查询上述对应关系确定第一服务器。需要说明的是,在本申请实施例中,可以根据任务配置参数中的一项数据确定对应的第一服务器,也可以根据任务配置参数中的多项数据确定对应的第一服务器,本申请实施例对此不作具体限定。
步骤103,基于所述任务配置参数,在所述第一服务器部署第一消息复制实例;其中,所述第一消息复制实例用于将所述待复制消息标识信息从所述消息源地址复制到所述消息目标地址。
在本申请实施例中,可以根据任务配置参数生成对应的第一消息复制实例,将该第一消息复制实例部署至第一服务器并运行,从而通过部署在第一服务器上的第一消息复制实例将待复制消息标识信息从消息源地址复制到消息目标地址,实现对消息复制任务的执行。其中,第一消息复制实例表示能够进行消息复制操作的程序。
上述部署方式可以包括但不限于将第一消息复制实例安装至第一服务器、在第一服务器生成第一消息复制实例对应的程序进程等。上述生成第一消息复制实例的过程也可以由第一服务器自主完成,例如,可以将任务配置参数传输至第一服务器,由第一服务器解析任务配置参数并生成对应的第一消息复制实例,将其加载至运行内存并运行。
进一步地,由于消息队列包括多种不同类型,例如RabbitMQ、Apache Kafka、Redis等,而复制不同消息队列中的消息所需要的具体操作可能存在差异,例如,针对ApacheKafka类型的消息,通常采用对应的复制工具MirrorMaker进行消息复制。因此,在上述复制消息标识信息中,还可以包含消息类型信息,以指示待复制消息的消息类型,从而在生成第一消息复制实例时,可以根据消息类型信息,选取对应的复制工具生成第一消息复制实例,以使第一消息复制实例可以在完成对应消息复制任务时具备较高的复制效率和稳定性。
在本申请实施例中,公开了一种消息复制方法,包括:获取消息复制任务的任务配置参数;任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;基于任务配置参数,从服务器集群中确定用于执行消息复制任务的第一服务器;基于任务配置参数,在第一服务器部署第一消息复制实例;其中,第一消息复制实例用于将待复制消息标识信息从消息源地址复制到消息目标地址。相较于相关技术中直接在服务器上配置并运行消息复制工具的方式,可以解析用户在任何地方生成的消息复制任务,并根据消息复制任务中的任务配置参数,从服务器集群中确定出适合执行该消息复制任务的第一服务器,在第一服务器部署并执行对应的消息复制实例以完成消息复制任务,通过本申请上述方案,能够将消息复制任务分配到服务器集群中的不同服务器,减少消息复制实例在运行过程中的相互影响,有助于提升消息复制任务的完成效率,还能在一定程度上提升用户在服务器集群中分配消息复制任务的效率。
图2是本申请实施例提供的另一种消息复制方法的步骤流程图,如图2所示,该方法包括:
步骤201,获取消息复制任务的任务配置参数;所述任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址。
此步骤可参考上述步骤101,本申请实施例不再赘述。
可选地,在本申请实施例中,所述任务配置参数还包括任务优先级,从而可以采用如下子步骤2011至子步骤2013确定用于执行所述消息复制任务的第一服务器:
子步骤2011,根据所述服务器集群中各个服务器分别对应的服务器优先级,确定所述任务优先级对应的匹配服务器。
由于不同消息队列服务于不同的业务,而不同业务存在不同需求,对于不同的消息复制任务而言,其重要程度、紧迫程度可能存在区别,因此,在本申请实施例中,任务配置参数还可以包括任务优先级,通过任务优先级可以将任务分配至更加合适的目标处理器,从而更加符合用户对任务的执行预期。其中,任务优先级的表示方式可以包括但不限于优先级评分(例如1至100分)、优先级等级(例如高、中、低)等,本申请实施例不做具体限定。
在本申请实施例中,考虑到服务器集群中的服务器性能和服务器数量有限,可以预先为服务器集群中的各个服务器配置相应的服务器优先级。可以由技术人员为服务器集群指定优先级等级(例如高、中、低),再为服务器集群中每个服务器分配对应的服务器优先级;也可以根据服务器集群中各个服务器的性能,自动确定各个服务器对应的服务器优先级,例如,可以对各个服务器对应的服务器性能进行排序,得到服务器性能序列,再按照优先级等级的数量对服务器性能序列进行分箱操作,得到各个优先级等级对应的性能分箱,最后为性能分箱中服务器性能对应的服务器,分配该性能分箱对应的优先级等级。
示例性地,为了保证具有较高任务优先级的消息复制任务可以被更好执行,避免较高优先级的消息复制任务由于服务器性能不足而无法及时完成的情况发生,可以将服务器集群中50%服务器的服务器优先级设置为高,将服务器集群中30%服务器的服务器优先级设置为中,将服务器集群中20%服务器的服务器优先级设置为低,以使服务器集群中可以有较多的服务器用于处理高优先级的消息复制任务,提高具有较高任务优先级的消息复制任务的执行效率。
具体地,通过将任务优先级与服务器优先级进行匹配,可以确定出该任务优先级对应的匹配服务器。
示例性地,若服务器集群中包含10台服务器,其中,5台服务器对应的服务器优先级为高,3台服务器对应的服务器优先级为中,2台服务器对应的服务器优先级为低,对于一个任务优先级为低的消息复制任务而言,可以确定出其对应的匹配服务器为上述2台服务器优先级为低的服务器。
可选地,可以通过以下子步骤A1至子步骤A2的方式确定各个服务器分别对应的服务器优先级:
子步骤A1,获取所述服务器集群中各个服务器的服务器性能;其中,所述服务器性能包括运算性能、存储性能、网络性能中的任一项。
在本申请实施例中,可以获取服务器的服务器性能,服务器性能可以包括但不限于运算性能、存储性能、网络性能等的一项或多项。其中,运算性能可以根据服务器的处理器型号确定,存储性能可以根据服务器搭载的运行内存大小确定,网络性能可以根据服务器的接入网络传输速率(可以包括上行速率和下行速率)确定。可以对上述运算性能、存储性能和网络性能进行加权平均确定服务器性能。
子步骤A2,基于所述各个服务器的服务器性能确定所述各个服务器分别对应的服务器优先级。
在本申请实施例中,可以为服务器性能较高的服务器设置较高的服务器优先级。具体地,可以根据服务器性能计算对应的性能指数,再根据性能指数和各个服务器优先级对应的性能阈值确定服务器对应的服务器优先级。也可以根据服务器性能对服务器集群中的所有服务器进行排名,再根据服务器排名和各个服务器优先级对应的排名区间确定服务器对应的服务器优先级。
通过服务器性能确定各个服务器对应的服务器优先级,能够使具有较高性能的服务器配置到较高的服务器优先级,从而保证任务优先级较高的消息复制任务可以使用较高性能的服务器,使得高优先级的消息复制任务可以被更有效处理,有助于满足用户对不同优先级的消息复制任务的处理需求。
子步骤2012,获取所述匹配服务器的实例运行数量和实例运行上限,将所述实例运行数量小于所述实例运行上限的匹配服务器确定为所述第一服务器。
在本申请实施例中,可以获取匹配服务器的实例运行数量和实例运行上限,其中,实例运行数量表示服务器中正在运行的消息复制实例的数量,实例运行上限表示服务器可以运行的消息复制实例最大数量,实例运行上限可以由用户设置,也可以由***自动计算得到,本申请实施例不作限定。
具体地,可以获取各个匹配服务器对应的实例运行数量和实例运行上限,并从实例运行数量小于实例运行上限的匹配服务器中选取一个服务器,作为第一服务器。上述选取可以是随机选取,也可以是按照服务器序号顺序选取,或通过其他方式选取,本申请实施例不做具体限定。
本申请实施例中,通过从服务器集群中确定与消息复制任务的任务优先级对应的匹配服务器,并从匹配服务器中选取具有足够空闲资源的第一服务器,不仅能够保证选取的第一服务器适合完成消息复制任务,还能够提高选取第一服务器的效率。
可选地,可以通过以下子步骤B1至子步骤B2确定匹配服务器的实例运行上限:
子步骤B1,基于所述任务配置参数确定所述消息复制任务对应的资源需求;其中,所述资源需求包括算力需求、存储需求、网络需求中的任一项。
在本申请实施例中,可以根据任务配置参数确定消息复制任务对应的资源需求,资源需求可以包括但不限于算力需求、存储需求、网络需求等的一项或多项。
具体地,由于任务优先级、消息类型以及需要复制的消息数量的不同,导致不同消息复制任务所需的资源需求也存在不同,可以根据任务配置参数计算相应的资源需求。
示例性地,可以根据任务优先级和消息类型确定算力需求、根据消息类型确定存储需求、根据任务优先级和消息数量确定网络需求,再根据算力需求、存储需求和网络需求进行加权平均,得到消息复制任务对应的资源需求。
子步骤B2,基于所述资源需求和所述匹配服务器的服务器性能确定所述实例运行上限。
在本申请实施例中,可以根据消息复制服务的资源需求和匹配服务器的服务器性能,计算匹配服务器的实例运行上限。具体地,可以根据服务器性能和资源需求的比值确定实例运行上限,也可以采用其他计算方式确定实例运行上限,本申请实施例不作具体限定。
通过计算消息复制服务的资源需求和匹配服务器的服务器性能,再根据资源需求和服务器性能,能够提高实例运行上限的准确性,使之更加适用于当前消息复制服务,使得根据实例运行上限判定匹配服务器是否有空闲资源消息复制服务的过程得到更为准确的判定结果。
可选地,当服务器集群中各个服务器均处于饱和状态时,服务器集群便无法继续承载新的消息复制任务,因此,在本申请实施例中,可以在所有匹配服务器的实例运行数量均小于其对应的实例运行上限的情况下,发送提示信息。通过提示信息,用户可以及时了解服务器集群的工作情况,及时为服务器集群增加新的服务器或提升服务器的性能,使消息复制任务可以被尽快处理。
步骤204,基于所述任务配置参数,在所述第一服务器部署第一消息复制实例;其中,所述第一消息复制实例用于将所述待复制消息标识信息从所述消息源地址复制到所述消息目标地址。
参照图3,图3示出了本申请实施例提供的一种消息复制实例部署示意图,高性能服务器31上已经部署了消息复制实例A和消息复制实例B,若获取到一个新的消息复制任务,该消息复制任务的任务优先级为高优先级,与高性能服务器31对应,则可以在确定高性能服务器31的实例运行数量小于实例运行上限的情况下,生成该消息复制任务对应的消息复制实例C并部署在高性能服务器31上,高性能服务器31运行消息复制实例C,通过专线网络(高性能网络)从该消息复制任务对应的消息源地址获取待复制消息,再通过专线网络将待复制消息传输至消息目标地址,从而快速完成该高优先级的消息复制任务。
步骤205,在所述实例数量大于1的情况下,基于所述任务配置参数,从所述服务器集群中确定用于执行所述消息复制任务的第二服务器。
在本申请实施例中,任务配置参数中还可以包括实例数量,其中,实例数量用于表示处理该任务配置参数对应的消息复制任务时,需要运行的消息复制实例数量,也就是说,用户可以通过将实例数量设置为大于1的值,使消息复制任务可以通过部署多个消息复制实例并行处理,以提升消息复制任务的完成速度。
具体地,在任务配置参数的实例数量大于1的情况下,不仅可以基于任务配置参数确定用于执行消息复制任务的第一服务器,还可以继续根据任务配置参数确定用于执行消息复制任务的第二服务器,直至确定出的用于执行消息复制任务的服务器数量等于任务配置参数的实例数量。需要说明的是,第一服务器和第二服务器可以是同一个服务器,确定第二服务器的过程可以与确定第一服务器的过程同步进行,也可以在将消息复制实例部署在第一服务器之后进行,本申请实施例不做具体限定。
基于任务配置参数,从服务器集群中确定用于执行消息复制任务的第二服务器的具体过程与上述步骤202中确定第一服务器的过程相似,本申请实施例不再赘述。
可选地,步骤205可以包括:
子步骤2051,在所述第一服务器的实例运行数量小于实例运行上限的情况下,将所述第一服务器确定为所述第二服务器。
在本申请实施例中,可以优先考虑将同一个消息复制任务对应的所有消息复制实例部署在同一服务器上,因此,可以在上述第一服务器能够继续部署新的消息复制实例的情况下,直接将第一服务器确定为第二服务器。
具体地,在第一服务器部署消息复制任务对应的一个消息复制实例后,可以优先对第一服务器进行判定,判断第一服务器的实例运行数量是否小于其实例运行上限,若实例运行数量小于实例运行上限,则说明第二服务器能够继续部署该消息复制任务对应的消息复制实例,则可以直接将第一服务器确定为第二服务器,以继续在第一服务器上部署该消息复制任务对应的消息复制实例,提升并行进行消息复制的效率以及维护多个并行处理的消息复制实例的便捷性。
子步骤2052,在所述第一服务器的实例运行数量大于或等于实例运行上限的情况下,从其他服务器中确定所述第二服务器;其中,所述其他服务器表示所述服务器集群中除所述第一服务器之外的服务器。
在本申请实施例中,若第一服务器的实例运行数量大于或等于其实例运行上限,可以继续从其他服务器中确定第二服务器,其中,其他服务器可以表示服务器集群中除第一服务器之外的服务器,例如,与消息复制任务的任务等级相匹配的匹配服务器、与第一服务器的物理距离最接近的服务器等,本申请实施例不做具体限定。
步骤206,基于所述任务配置参数,在所述第二服务器部署第二消息复制实例;其中,所述第二消息复制实例用于执行所述消息复制任务。
此步骤与上述步骤103中部署第一消息复制实例的过程相似,本申请实施例不再赘述。
需要说明的是,一个消息复制任务所部署的消息复制实例的数量与其任务配置参数中的实例数量相同。示例性地,若某个消息复制任务对应的任务配置参数中实例数量为3,则可以在服务器集群中部署该消息复制任务对应的第一消息复制实例、第二消息复制实例和第三消息复制实例。
参照图4,图4示出了本申请实施例提供的另一种消息复制实例部署示意图,低性能服务器41上已经部署了一个消息复制实例D,若该消息复制实例D对应的消息复制任务的实例数量大于1,则可以在确定低性能服务器41的实例运行数量小于实例运行上限的情况下,继续生成一个消息复制实例D部署在该低性能服务器41上,如此循环,直至服务器集群中部署的消息复制实例D的数量达到该消息复制任务的实例数量。低性能服务器41运行消息复制实例D,通过普通网络(例如VPN网络)从该消息复制任务对应的消息源地址获取待复制消息,再通过普通网络将待复制消息传输至消息目标地址。
在本申请实施例中,一个消息复制实例可以相当于一个消息复制通道,可以根据实例数量部署相应数量的消息复制实例,从而实现多通道复制,提高消息复制效率。
步骤207,以第一时间长度为周期,获取所述服务器集群中各个消息复制实例的运行状态信息。
在本申请实施例中,还可以对服务器集群中的所有已经部署的消息复制实例进行巡检,从中判断出发生故障的消息复制实例并进行终止、重新部署等操作,以提升服务器集群中消息复制实例的健康度,提升服务器集群的利用率。
具体地,可以以第一时间长度为周期,获取服务器集群中各个消息复制实例的运行状态信息,其中,运行状态信息可以包括但不限于消息复制错误率、消息复制进度、剩余待复制消息数量等,本申请实施例不做具体限定。
其中,第一时间长度可以由技术人员进行设置,例如,可以将第一时间长度设置为1秒;第一时间长度也可以根据***运行情况实时计算得到,从而使第一时间长度可以动态自适应,例如,可以基于服务器集群中的消息复制实例数量计算第一时间长度,使得消息复制实例数量较多时计算出的第一时间长度较短,从而在消息复制实例数量较多时以短的周期获取各个消息复制实例的运行状态信息,有助于提高***在高负载状态下的稳定性。
步骤208,在所述消息复制实例的最新运行状态信息的获取时刻距离当前时刻大于或等于第二时间长度的情况下,终止所述消息复制实例;其中,所述第二时间长度大于所述第一时间长度。
在本申请实施例中,可以检测服务器集群中运行的每个消息复制实例最新运行状态信息的获取时间与当前时刻的时间差,若该时间差大于或等于第二时间长度,则说明该时间差对应的消息复制实例有较长一段时间获取不到运行状态信息,从而可以确定该消息复制实例处于异常状态,进而可以对该消息复制实例执行终止操作,以释放其占用的服务器资源,有助于提升服务器集群的利用率。需要说明的是,第二时间长度可以大于第一时间长度,以减少误判情况的发生。
在本申请实施例中,可以基于第一时间长度与预设时间增量之和计算第二时间长度,其中,预设时间增量可以由技术人员进行设置,例如,在第一时间长度为1秒、预设时间增量为0.1秒的情况下,第二时间长度为1.1秒。
进一步地,运行状态信息还可以包括复制错误率,从而可以在消息复制错误率大于或等于错误率阈值(例如20%)的情况下,确认该消息复制实例处于异常状态,从而终止消息复制实例。需要说明的是,还可以基于运行状态信息中的其他参数确定消息复制实例是否处于异常状态,技术人员可以根据业务需求灵活设置,本申请实施例不做具体限定。
参照图5,图5示出了本申请实施例提供的一种健康巡检流程图,如图5所示,可以以第一时间长度为间隔触发执行巡检操作,每次巡检过程中,获取服务器集群中各个消息复制实例的运行状态信息,然后基于运行状态信息循环检查每个消息复制实例,判断未获取到最新运行状态信息的时间长度是否超过第二时间长度(例如5分钟),在判断结果为是的情况下,终止对应的消息复制实例,在判断结果为否的情况下,判断消息复制错误率是否超过错误率阈值,在判断结果为是的情况下,终止对应的消息复制实例,在判断结果为否的情况下,返回循环并检查下一个消息复制实例。
本申请实施例中,公开了另一种消息复制方法,包括:获取消息复制任务的任务配置参数;任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;基于任务配置参数,从服务器集群中确定用于执行消息复制任务的第一服务器;基于任务配置参数,在第一服务器部署第一消息复制实例;其中,第一消息复制实例用于将待复制消息标识信息从消息源地址复制到消息目标地址。相较于相关技术中直接在服务器上配置并运行消息复制工具的方式,可以解析用户在任何地方生成的消息复制任务,并根据消息复制任务中的任务配置参数,从服务器集群中确定出适合执行该消息复制任务的第一服务器,在第一服务器部署并执行对应的消息复制实例以完成消息复制任务,通过本申请上述方案,能够将消息复制任务分配到服务器集群中的不同服务器,减少消息复制实例在运行过程中的相互影响,有助于提升消息复制任务的完成效率,还能在一定程度上提升用户在服务器集群中分配消息复制任务的效率。
与上述本申请的消息复制方法实施例所提供的方法相对应,参见图6,本申请还提供了一种消息复制装置结构图,在本实施例中,该装置包括:
获取模块601,用于获取消息复制任务的任务配置参数;所述任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;
第一确定模块602,用于基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器;
第一部署模块603,用于基于所述任务配置参数,在所述第一服务器部署第一消息复制实例;其中,所述第一消息复制实例用于将所述待复制消息标识信息从所述消息源地址复制到所述消息目标地址。
可选地,所述任务配置参数还包括任务优先级,所述第一确定模块包括:
匹配服务器子模块,用于根据所述服务器集群中各个服务器分别对应的服务器优先级,确定所述任务优先级对应的匹配服务器;
第一服务器子模块,用于获取所述匹配服务器的实例运行数量和实例运行上限,将所述实例运行数量小于所述实例运行上限的匹配服务器确定为所述第一服务器。
可选地,所述装置还包括:
资源需求模块,用于基于所述任务配置参数确定所述消息复制任务对应的资源需求;其中,所述资源需求包括算力需求、存储需求、网络需求中的任一项;
实例运行上限模块,用于基于所述资源需求和所述匹配服务器的服务器性能确定所述实例运行上限。
可选地,所述装置还包括:
提示模块,用于在各个匹配服务器的实例运行数量均小于实例运行上限的情况下,发送提示信息。
可选地,所述装置还包括:
服务器性能模块,用于获取所述服务器集群中各个服务器的服务器性能;其中,所述服务器性能包括运算性能、存储性能、网络性能中的任一项;
服务器优先级模块,用于基于所述各个服务器的服务器性能确定所述各个服务器分别对应的服务器优先级。
可选地,所述任务配置参数包括实例数量,所述装置还包括:
第二确定模块,用于在所述实例数量大于1的情况下,基于所述任务配置参数,从所述服务器集群中确定用于执行所述消息复制任务的第二服务器;
第二部署模块,用于基于所述任务配置参数,在所述第二服务器部署第二消息复制实例;其中,所述第二消息复制实例用于执行所述消息复制任务。
可选地,所述第二确定模块包括:
第二服务器确定子模块,用于在所述第一服务器的实例运行数量小于实例运行上限的情况下,将所述第一服务器确定为所述第二服务器;
第二服务器选取子模块,用于在所述第一服务器的实例运行数量大于或等于实例运行上限的情况下,从其他服务器中确定所述第二服务器;其中,所述其他服务器表示所述服务器集群中除所述第一服务器之外的服务器。
可选地,所述装置还包括:
状态获取模块,用于以第一时间长度为周期,获取所述服务器集群中各个消息复制实例的运行状态信息;
终止模块,用于在所述消息复制实例的最新运行状态信息的获取时刻距离当前时刻大于或等于第二时间长度的情况下,终止所述消息复制实例;其中,所述第二时间长度大于所述第一时间长度。
综上,本申请实施例提供的一种消息复制装置,包括:获取模块,用于获取消息复制任务的任务配置参数;任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;第一确定模块,用于基于任务配置参数,从服务器集群中确定用于执行消息复制任务的第一服务器;第一部署模块,用于基于任务配置参数,在第一服务器部署第一消息复制实例;其中,第一消息复制实例用于将待复制消息标识信息从消息源地址复制到消息目标地址。相较于相关技术中直接在服务器上配置并运行消息复制工具的方式,可以解析用户在任何地方生成的消息复制任务,并根据消息复制任务中的任务配置参数,从服务器集群中确定出适合执行该消息复制任务的第一服务器,在第一服务器部署并执行对应的消息复制实例以完成消息复制任务,通过本申请上述方案,能够将消息复制任务分配到服务器集群中的不同服务器,减少消息复制实例在运行过程中的相互影响,有助于提升消息复制任务的完成效率,还能在一定程度上提升用户在服务器集群中分配消息复制任务的效率。
图7是本申请一个实施例的电子设备600的逻辑框图。例如,电子设备600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图7,电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电力组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604用于存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理***,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。若屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的分界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件610用于输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616用于便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于实现本申请实施例提供的一种隐私保护的联邦学习方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述方法。例如,所述非临时性存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图8是本申请一个实施例的电子设备700的逻辑框图。例如,电子设备700可以被提供为一服务器。参照图8,电子设备700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行本申请实施例提供的一种隐私保护的联邦学习方法。
电子设备700还可以包括一个电源组件726被配置为执行电子设备700的电源管理,一个有线或无线网络接口750被配置为将电子设备700连接到网络,和一个输入输出(I/O)接口758。电子设备700可以操作基于存储在存储器732的操作***,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现所述的隐私保护的联邦学习方法。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (11)
1.一种消息复制方法,其特征在于,所述方法包括:
获取消息复制任务的任务配置参数;所述任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;
基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器;
基于所述任务配置参数,在所述第一服务器部署第一消息复制实例;其中,所述第一消息复制实例用于将所述待复制消息标识信息从所述消息源地址复制到所述消息目标地址。
2.根据权利要求1所述的方法,其特征在于,所述任务配置参数还包括任务优先级,所述基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器,包括:
根据所述服务器集群中各个服务器分别对应的服务器优先级,确定所述任务优先级对应的匹配服务器;
获取所述匹配服务器的实例运行数量和实例运行上限,将所述实例运行数量小于所述实例运行上限的匹配服务器确定为所述第一服务器。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
基于所述任务配置参数确定所述消息复制任务对应的资源需求;其中,所述资源需求包括算力需求、存储需求、网络需求中的任一项;
基于所述资源需求和所述匹配服务器的服务器性能确定所述实例运行上限。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在各个匹配服务器的实例运行数量均小于实例运行上限的情况下,发送提示信息。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述服务器集群中各个服务器的服务器性能;其中,所述服务器性能包括运算性能、存储性能、网络性能中的任一项;
基于所述各个服务器的服务器性能确定所述各个服务器分别对应的服务器优先级。
6.根据权利要求1所述的方法,其特征在于,所述任务配置参数包括实例数量,所述方法还包括:
在所述实例数量大于1的情况下,基于所述任务配置参数,从所述服务器集群中确定用于执行所述消息复制任务的第二服务器;
基于所述任务配置参数,在所述第二服务器部署第二消息复制实例;其中,所述第二消息复制实例用于执行所述消息复制任务。
7.根据权利要求6所述的方法,其特征在于,所述基于所述任务配置参数,从所述服务器集群中确定用于执行所述消息复制任务的第二服务器,包括:
在所述第一服务器的实例运行数量小于实例运行上限的情况下,将所述第一服务器确定为所述第二服务器;
在所述第一服务器的实例运行数量大于或等于实例运行上限的情况下,从其他服务器中确定所述第二服务器;其中,所述其他服务器表示所述服务器集群中除所述第一服务器之外的服务器。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
以第一时间长度为周期,获取所述服务器集群中各个消息复制实例的运行状态信息;
在所述消息复制实例的最新运行状态信息的获取时刻距离当前时刻大于或等于第二时间长度的情况下,终止所述消息复制实例;其中,所述第二时间长度大于所述第一时间长度。
9.一种消息复制装置,其特征在于,所述装置包括:
获取模块,用于获取消息复制任务的任务配置参数;所述任务配置参数包括待复制消息标识信息、消息源地址和消息目标地址;
第一确定模块,用于基于所述任务配置参数,从服务器集群中确定用于执行所述消息复制任务的第一服务器;
第一部署模块,用于基于所述任务配置参数,在所述第一服务器部署第一消息复制实例;其中,所述第一消息复制实例用于将所述待复制消息标识信息从所述消息源地址复制到所述消息目标地址。
10.一种电子设备,其特征在于,包括:处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至8中任一项所述的消息复制方法。
11.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至8中任一项所述的消息复制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310730010.XA CN116846897A (zh) | 2023-06-19 | 2023-06-19 | 一种消息复制方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310730010.XA CN116846897A (zh) | 2023-06-19 | 2023-06-19 | 一种消息复制方法、装置、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116846897A true CN116846897A (zh) | 2023-10-03 |
Family
ID=88169826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310730010.XA Pending CN116846897A (zh) | 2023-06-19 | 2023-06-19 | 一种消息复制方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116846897A (zh) |
-
2023
- 2023-06-19 CN CN202310730010.XA patent/CN116846897A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110515709B (zh) | 任务调度***、方法、装置、电子设备及存储介质 | |
US11934848B2 (en) | Control display method and electronic device | |
CN107370772B (zh) | 账号登录方法、装置及计算机可读存储介质 | |
CN110519461B (zh) | 文件发送方法、装置、计算机设备以及存储介质 | |
EP3125163A1 (en) | Method and device for flight notification, and method and device for flight setting | |
CN109075960B (zh) | 信息传输方法及装置 | |
CN114138439A (zh) | 任务调度方法及装置、电子设备和存储介质 | |
CN113220482A (zh) | 调用请求处理方法、装置、电子设备及存储介质 | |
CN112905331A (zh) | 任务处理***、方法及装置、电子设备和存储介质 | |
CN114153582A (zh) | 资源调度方法及装置、电子设备和存储介质 | |
CN112671897A (zh) | 分布式***的访问方法、装置、存储介质、设备和产品 | |
CN113157439B (zh) | 一种资源统计方法、装置及终端 | |
CN116069612A (zh) | 一种异常定位方法、装置和电子设备 | |
CN109471714B (zh) | 平台部署方法、装置、设备及储存介质 | |
CN115460180A (zh) | 视频通话的处理方法和装置、电子设备 | |
CN112256563A (zh) | 安卓应用稳定性测试方法、装置、电子设备及存储介质 | |
CN109586951B (zh) | 实施故障转移的方法、装置、电子设备及可读存储介质 | |
CN116846897A (zh) | 一种消息复制方法、装置、电子设备及可读存储介质 | |
CN113114731B (zh) | 任务处理方法、装置、服务器及存储介质 | |
CN113407316A (zh) | 服务调度方法、装置、电子设备及存储介质 | |
CN112817844A (zh) | 后台进程驻留测试方法、装置、设备及存储介质 | |
CN108984294B (zh) | 资源调度方法、装置及存储介质 | |
CN112153681B (zh) | 资源切分方法、装置、电子设备和存储介质 | |
CN113055597B (zh) | 摄像头调用实现方法、装置及电子设备 | |
CN110247828B (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 |