CN113282373A - 用于分布式并发应用服务的方法、装置和设备 - Google Patents
用于分布式并发应用服务的方法、装置和设备 Download PDFInfo
- Publication number
- CN113282373A CN113282373A CN202110620289.7A CN202110620289A CN113282373A CN 113282373 A CN113282373 A CN 113282373A CN 202110620289 A CN202110620289 A CN 202110620289A CN 113282373 A CN113282373 A CN 113282373A
- Authority
- CN
- China
- Prior art keywords
- event
- execution entity
- user
- user logic
- application
- 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 47
- 238000012544 monitoring process Methods 0.000 claims abstract description 19
- 230000004083 survival effect Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 32
- 238000004891 communication Methods 0.000 claims description 19
- 238000001514 detection method Methods 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 7
- 230000000694 effects Effects 0.000 abstract description 10
- 238000007726 management method Methods 0.000 description 41
- 230000000875 corresponding effect Effects 0.000 description 28
- 238000004364 calculation method Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013468 resource allocation Methods 0.000 description 2
- 238000007789 sealing Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及大数据技术领域,公开一种用于分布式并发应用服务的方法,包括:服务管理端获取用户发出的事件申请;根据事件申请,生成符合设定数量的容器;在容器中加载用户逻辑执行实体;确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体。用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。通过增加执行实体监控,实时管理服务执行进度及服务执行状态。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。本申请还公开一种用于分布式并发应用服务的装置及设备。
Description
技术领域
本申请涉及大数据技术领域,例如涉及一种用于分布式并发应用服务的方法、装置和设备。
背景技术
另一种资源协调者Yarn(YetAnother Resource Negotiator)是一种新的Hadoop资源管理器,他是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,他的引入为集群在利用率、资源统一管理和共享等方面带来了巨大好处。
目前,在大数据开发方向,现有的基于Hadoop Yarn的作业计算框架有如Spark,Flink,MapReduce等。这些框架针对数据流处理有一套完善的接口方法跟流程,减轻了开发者在处理数据与处理并发上的成本。
在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:
现有的Hadoop Yarn的作业计算框架封闭程度较高,用户应用方向受限,用户只能应用在数据处理方面。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
本公开实施例提供了一种用于分布式并发应用服务的方法及装置、设备,以解决现有的Hadoop Yarn的作业计算框架封闭程度较高,用户应用方向受限的技术问题。
在一些实施例中,所述用于分布式并发应用服务的方法包括:
服务管理端获取用户发出的事件申请;
根据事件申请,生成符合设定数量的容器;
在容器中加载用户逻辑执行实体;
确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体。
可选地,所述方法还包括:
服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值。
可选地,所述根据事件申请,生成符合设定数量的容器,还包括:
获取所述事件申请的目标事件类型;
根据事件类型与容器数量的映射关系,确定所述目标事件类型对应的容器数量为所述设定数量。
可选地,所述在容器中加载用户逻辑执行实体,包括:
在容器中启动用户逻辑执行实体;
获取用户逻辑执行实体提交的注册请求;
根据注册请求,建立用户逻辑执行实体与服务管理端的通信连接关系。
可选地,所述确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体,包括:
根据事件申请,确定容器配置的资源数量;
根据容器配置的资源数量,确定容器中用户逻辑执行实体的处理能力;
服务管理端发送符合用户逻辑执行实体处理能力的事件逻辑参数。
可选地,所述服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值,还包括:
增加容器监控,用以监控用户逻辑执行实体的运行状态;
根据用户逻辑执行实体的运行状态,确定用户逻辑执行实体的存活状态。
可选地,所述根据用户逻辑执行实体的运行状态,确定用户逻辑执行实体的存活状态,包括:
根据检测周期,检测用户逻辑执行实体的运行状态;
根据用户逻辑执行实体的运行状态,更新用户逻辑执行实体的存活状态。
可选地,所述服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值,还包括:
接收用户逻辑执行实体根据上报周期,上报固定格式信息;
服务管理端根据上报的固定格式信息,更新用户逻辑执行实体的存活状态。
在一些实施例中,所述用于分布式并发应用服务的装置包括:
处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在运行所述程序指令时,执行如上述用于分布式并发应用服务的方法。
在一些实施例中,所述设备包括:
如上述的用于分布式并发应用服务的装置。
本公开实施例提供的用于分布式并发应用服务的方法及用于分布式并发应用服务的装置、设备,可以实现以下技术效果:
用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。此外,还可以通过增加执行实体监控,实时管理服务执行进度及服务执行状态。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
图1是本公开实施例提供的一个用于分布式并发应用服务的方法的示意图;
图2是本公开实施例提供的另一个用于分布式并发应用服务的方法的示意图;
图3是本公开实施例提供的一个用于分布式并发应用服务的装置的示意图;
图4是本公开实施例提供的另一个用于分布式并发应用服务的装置的示意图。
具体实施方式
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
结合图1所示,本公开实施例提供一种用于分布式并发应用服务的方法,包括:
S01,服务管理端获取用户发出的事件申请。
在本技术方案中,用户向服务管理端发出的事件申请中可以包括事件所需容器数量、事件执行类型或事件逻辑参数中的一种或多种。在实际应用中,用户发出的事件申请可以是关于爬虫的事件申请、关于分布式应用的事件申请、关于数据计算的事件申请或其他事件申请,本公开示例对此不作限定,只要可采用分布式并发应用的服务即可。在实际应用中,以事件申请为关于数据计算的事件申请为例,该事件申请中涉及的事件执行类型是数据计算,事件所需容器数量可以是1000,100,10000或其他数值,事件的容器数量可以理解为进程数量或并发数量,即以容器数量为1000为例,在处理事件类型为数据计算时,有1000个容器对数据计算事件进行运算。事件逻辑参数可以是如何进行计算处理,包括文件位置、文件的处理逻辑或其他可以表示事件逻辑的数据。
S02,根据事件申请,生成符合设定数量的容器。
在本技术方案中,根据事件申请,生成符合设定数量的容器可以是根据事件申请中的事件所需容器数量确定,并将前述事件所需容器数量作为符合设定的容器数量。在实际应用中,以事件申请为关于爬虫的事件申请为例,在事件申请中所需容器数量可以是1000个或其他数值,生成符合设定数量的容器可以是服务管理端在获取到所需容器数量后,生成1000或其他数值个容器。
S03,在容器中加载用户逻辑执行实体。
在本技术方案中,在每个容器中加载用户逻辑执行实体,这里的用户逻辑执行实体可以理解为是无状态的,通过加载与服务管理端建立连接。
S04,确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体。
在本技术方案中,用户逻辑执行实体可以是作为事件逻辑参数的执行体,根据事件申请对应的事件逻辑参数,由服务管理端配置事件逻辑参数,这里的用户逻辑执行实体可以理解为启动状态,可以执行前述事件逻辑参数。
采用本公开实施例提供的用于分布式并发应用服务的方法,用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
在一些可选实施方式中,在确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体之后,可以包括服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值。
在实际应用中,根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值,可以是根据用户逻辑执行实体运行状态,确定当前执行中的事件逻辑参数的执行进度。
可选地,当前执行中的事件逻辑参数的执行进度确定方式包括服务管理端建立用户逻辑执行实体监听,获取用户逻辑执行实体的执行进度。在实际应用中,可以按照如下公式计算获得用户逻辑执行实体的执行进度,
ɑ=β1/β2
其中,ɑ表示当前执行中的事件逻辑参数的执行进度,β1表示已完成的事件逻辑参数,β2表示配置的事件逻辑参数。
可选地,确定当前执行中的事件逻辑参数的执行进度,包括确定单个容器中用户逻辑执行实体的事件逻辑参数的执行进度。
可选地,确定当前执行中的事件逻辑参数的执行进度,可以包括确定全部容器中用户逻辑执行实体的事件逻辑参数的总执行进度。
在本技术方案中,上述图1中关于用于分布式并发应用服务的方法已经可以解决本申请技术方案所要解决的问题,即现有的服务框架封闭程度较高,用户应用方向受限,这一技术问题。而通过增加执行实体监控,实时管理服务执行进度及服务执行状态,可以更好的反映服务进度状态,便于用户确认服务进度。
在一些可选实施例中,根据事件申请,生成符合设定数量的容器,可以包括:
获取所述事件申请的目标事件类型;
根据事件类型与容器数量的映射关系,确定所述目标事件类型对应的容器数量为所述设定数量。
在本技术方案中,获取事件申请中的事件类型,并将前述事件类型确定为目标事件类型。在实际应用中,以用户发出的事件申请中包括的事件类型为分布式应用类型为例,前述获取所述事件申请的目标事件类型即为分布式应用事件类型。
可选地,根据事件类型与容器数量的映射关系,确定所述目标事件类型对应的容器数量为所述设定数量可以是,如下表1提供了一种目标事件类型与容器数量的对应关系示例表,该对应关系示例表用于目标事件类型与容器数量的对应关系;
表1:事件类型与容器数量对应关系的示例表
目标事件类型 | 容器数量 |
第一目标事件类型 | 第一容器数量 |
第二目标事件类型 | 第二容器数量 |
... | ... |
第N目标事件类型 | 第N容器数量 |
其中,将根据对应关系确定的容器数量,作为前述设定数量。
这样,实现用户根据实际需求,获取所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
可选地,所述在容器中加载用户逻辑执行实体,包括:
在容器中启动用户逻辑执行实体;
获取用户逻辑执行实体提交的注册请求;
根据注册请求,建立用户逻辑执行实体与服务管理端的通信连接关系。
在本技术方案中,在用户逻辑执行实体启动后,根据用户逻辑执行实体提交的注册请求,建立用户逻辑执行实体与服务管理端的通信连接关系可以是理解为建立传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol,TCP/IP协议)或者在启动用户逻辑执行实体的容器中均集成有软件开发工具包(Software DevelopmentKit,SDK),该软件开发工具包通过暴露各种程序编程接口(Application ProgrammingInterface,API)与本申请技术方案涉及的服务管理端建立连接,本技术方案对用户逻辑执行实体与服务管理端建立通信连接的具体方式不做限定,只要可表示建立用户逻辑执行实体与服务管理端的通信连接关系即可。在实际应用中,用户逻辑执行实体与服务管理端的通信连接关系是一直存活的。
这样,用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。通过增加执行实体监控,实时管理服务执行进度及服务执行状态。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
可选地,所述确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体,包括:
根据事件申请,确定容器配置的资源数量;
根据容器配置的资源数量,确定容器中用户逻辑执行实体的处理能力;
服务管理端发送符合用户逻辑执行实体处理能力的事件逻辑参数。
在本技术方案中,根据事件申请,确定容器配置的资源数量可以是根据事件类型与事件所需资源的映射关系,确定前述步骤中获取的目标事件类型所需资源,将确定的事件所需资源作为请求发送至服务管理端申请资源配置,并将根据请求配置的资源数量作为容器配置的资源数量。其中,向服务管理端发送请求可以是通过前述用户逻辑执行实体与服务管理端的通信连接关系实现。资源数量可以理解为CPU(central processing unit,简称中央处理器)使用率或内存占有量。
在一些可选实施方式中,上述根据容器配置的资源数量,确定容器中用户逻辑执行实体的处理能力,包括:
根据容器配置的资源总量,以及根据事件申请生成的符合设定数量的容器,平均配置每个容器的资源数量。
在实际应用中,根据前述请求申请资源配置,所得到的容器配置的资源总量至少满足事件申请所需容器数量的配置,以事件类型为爬虫事件为例,所需要爬的网页数量可以是一千万张网页,所确定的符合设定数量的容器数量为一千个,所能确定的每个容器中用户逻辑执行实体的处理能力为可以爬一万张网页。这里每个容器中的用户逻辑执行实体的处理能力是相同的。
在一些可选实施方式中,上述根据容器配置的资源数量,确定容器中用户逻辑执行实体的处理能力,可以包括:
根据每个容器配置的资源数量,确定每个容器中用户逻辑执行实体的处理能力。
在实际应用中,根据前述请求申请资源配置,每个容器所得到的配置的资源数量是不一致的,根据不同的资源数量,各容器中的用户逻辑执行实体的处理能力也是不同的,户逻辑执行实体的处理能力与容器所得到的配置的资源数量为正相关,各容器间的处理能力总和至少满足事件申请所需的处理计算量。以事件类型为爬虫事件为例,比如第一个容器所配置的资源数量支持第一个容器中加载的用户逻辑执行实体的处理能力为可以爬一万张网页,第二个容器配置的资源数量支持第二个容器中加载的用户逻辑执行实体的处理能力为爬七千张网页。这里每个容器中的用户逻辑执行实体的处理能力可以是不相同的。
可选地,服务管理端发送符合用户逻辑执行实体处理能力的事件逻辑参数可以是根据不同用户逻辑执行实体发送事件逻辑参数,在实际应用中,以数据计算数据类型为例,比如第一个容器中的用户逻辑执行实体可以处理的文件数量为一千个,服务管理端针对第二个容器发送的事件逻辑参数是从第一千零一个文件开始处理。
这样,用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
结合图2所示,本公开实施例提供另一种用于分布式并发应用服务的方法,包括:
S11、服务器管理端获取用户发出的事件申请;
S12、根据事件申请与容器数量的映射关系,确定所述事件申请所需的容器数量;
S13、在容器中启动用户逻辑执行实体;
S14、建立用户逻辑实体与服务管理端的通信连接关系;
S15、根据所述通信连接关系,配置与事件申请对应的事件逻辑参数至用户逻辑执行实体;
S16、服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值。
这样,用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。通过增加执行实体监控,实时管理服务执行进度及服务执行状态。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
可选地,服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值,可以包括:
增加容器监控,用以监控用户逻辑执行实体的运行状态;
根据用户逻辑执行实体的运行状态,确定用户逻辑执行实体的存活状态。
在本技术方案中,可选地,增加容器监控,用以监控用户逻辑执行实体的运行状态可以是服务管理端周期性检测用户逻辑执行实体的运行状态。在实际应用中,服务管理端周期性检测的检测周期可以是二十秒、三十秒、四十秒或其他数值。可选地,增加容器监控,用以监控用户逻辑执行实体的运行状态可以是在服务管理端处于闲时状态的情况下,检测用户逻辑执行实体的运行状态。其中闲时状态可以是指服务管理端的CPU使用率不足100%。
这样,用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。通过增加执行实体监控,实时管理服务执行进度及服务执行状态。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
可选地,所述根据用户逻辑执行实体的运行状态,确定用户逻辑执行实体的存活状态,包括:
根据检测周期,检测用户逻辑执行实体的运行状态;
根据用户逻辑执行实体的运行状态,更新用户逻辑执行实体的存活状态。
在本技术方案中,检测周期可以是上述方案中提及的服务管理端周期性检测的检测周期。根据用户逻辑执行实体的运行状态,更新用户逻辑执行实体的存活状态可以是根据服务管理端检测的用户逻辑执行实体的运行状态确定用户逻辑执行实体是否存在数据异常错误或意外挂断,在用户逻辑执行实体运行状态是正常的情况下,认为检测的用户逻辑执行实体为存活。
这样,通过增加执行实体监控,服务管理端周期性检测用户逻辑执行实体的状态,更新用户逻辑执行实体的存活状态,确保及时知晓每个用户逻辑执行实体的数据异常错误或意外挂断,从而满足用户不同的应用需求,实现分布式并发应用服务。
可选地,所述服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值,可以包括:
接收用户逻辑执行实体根据上报周期,上报固定格式信息;
服务管理端根据上报的固定格式信息,更新用户逻辑执行实体的存活状态。
在本技术方案中,用户逻辑执行实体的上报周期可以是十秒、二十秒、三十秒或其他数值。其中,用户逻辑执行实体的上报周期小于服务管理端周期性检测的检测周期。可选地,上报固定格式信息可以是上传固定字符串数据、固定整数型数据、固定浮点型数据或其他类型固定格式信息,本技术方案对此不做具体限定,只要可反映固定格式的信息即可。
可选地,服务管理端根据上报的固定格式信息,更新用户逻辑执行实体的存活状态,可以是服务管理端接收固定格式信息,在所述固定格式信息符合预设对应关系的情况下,更新用户逻辑执行实体的存活状态。
在实际应用中,在所述固定格式信息符合预设对应关系的情况下,更新用户逻辑执行实体的存活状态,可以是上报的固定格式信息与预设存储的信息相符的情况下,认为上报固定参数的用户逻辑执行实体运行状态为正常,更新上报固定参数的用户逻辑执行实体存活状态为存活。或者,上报的固定格式信息与用户逻辑执行实体的运行状态符合客户管理端预设的对应关系的情况下,更新上报固定参数的用户逻辑执行实体存活状态为存活。如下表2提供了一种上报固定参数与用户逻辑执行实体运行状态的对应关系示例表,该对应关系示例表用于上报固定参数与用户逻辑执行实体运行状态的对应关系;
表2:上报固定参数与用户逻辑执行实体运行状态对应关系的示例表
上报固定参数 | 用户逻辑执行实体运行状态 |
第一上报固定参数 | 第一运行状态 |
第二上报固定参数 | 第二运行状态 |
... | ... |
第N上报固定参数 | 第N运行状态 |
在一些可选实施方式中,服务管理端根据上报的固定格式信息,更新用户逻辑执行实体的存活状态,可以包括:
获取上报的固定格式信息的上报时间;
服务管理端根据上报的固定格式信息与上报时间,更新用户逻辑执行实体的存活状态。
在本实施例中,服务管理端根据上报的固定格式信息与上报时间,更新用户逻辑执行实体的存活状态可以是在用户逻辑执行实体上报的固定格式信息满足前述判断条件的情况下,获取上报固定格式信息的上报时间。在所述上报时间小于预设上报时间差的情况下,更新上报固定参数的用户逻辑执行实体存活状态为存活。在实际应用中,获取上报固定格式信息的上报时间可以是获取本次上报固定格式信息的时间与相邻的前次上报时间的时间差,前述预设上报时间差可以是用户逻辑执行实体的上报周期或大于上报周期。
这样,通过增加执行实体监控,服务管理端通过用户逻辑执行实体上报的信息及上报时间,更新用户逻辑执行实体的存活状态,确保及时知晓每个用户逻辑执行实体的数据异常错误或意外挂断,从而满足用户不同的应用需求,实现分布式并发应用服务。
结合图3所示,本公开实施例提供一种用于分布式并发应用服务的装置,包括事件获取模块21、容器生成模块22、执行实体加载模块23和逻辑参数配置模块24。
事件获取模块21被配置为获取用户发出的事件申请;容器生成模块22被配置为根据事件申请,生成符合设定数量的容器;执行实体加载模块23被配置为在容器中加载用户逻辑执行实体;逻辑参数配置模块24被配置为确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体。
采用本公开实施例提供的用于分布式并发应用服务的装置,有利于用户根据实际需求,指定所需容器数量,并通过逻辑执行实体在容器中执行用户所需业务实现逻辑。通过增加执行实体监控,实时管理服务执行进度及服务执行状态。达到将业务实现逻辑开放给用户的效果,从而满足用户不同的应用需求,实现分布式并发应用服务。
可选地,该用于分布式并发应用服务的装置还包括状态返回值发送模块。
状态返回值发送模块被配置为根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值。
可选地,容器生成模块22还包括目标事件类型确定子模块与设定数量确定子模块;
目标事件类型确定子模块被配置为获取上述事件申请的目标事件类型;
设定数量确定子模块被配置为根据事件类型与容器数量的映射关系,确定前述目标事件类型对应的容器数量为设定数量。
可选地,执行实体加载模块23包括用户逻辑执行实体启动子模块、注册请求获取子模块、通信连接建立子模块;
用户逻辑执行实体启动子模块被配置为在容器中启动用户逻辑执行实体;
注册请求获取子模块被配置为获取用户逻辑执行实体提交的注册请求;
通信连接建立子模块被配置为根据注册请求,建立用户逻辑执行实体与服务管理端的通信连接关系。
可选地,逻辑参数配置模块24包括配置资源数量确定子模块、用户逻辑执行实体处理能力确定子模块和事件逻辑参数发送子模块;
配置资源数量确定子模块被配置为根据事件申请,确定容器配置的资源数量;
用户逻辑执行实体处理能力确定子模块被配置为根据容器配置的资源数量,确定容器中用户逻辑执行实体的处理能力;
事件逻辑参数发送子模块被配置为服务管理端发送符合用户逻辑执行实体处理能力的事件逻辑参数。
可选地,状态返回值发送模块还包括容器监控子模块和用户逻辑执行实体存活状态确认子模块;
容器监控子模块被配置为监控用户逻辑执行实体的运行状态;
用户逻辑执行实体存活状态确认子模块被配置为根据用户逻辑执行实体的运行状态,确定用户逻辑执行实体的存活状态。
可选地,用户逻辑执行实体存活状态确认子模块还可以被配置为根据检测周期,检测用户逻辑执行实体的运行状态,更新用户逻辑执行实体的存活状态。
可选地,状态返回值发送模块还包括上报固定格式信息获取子模块和存活状态更新子模块;
上报固定格式信息获取子模块被配置为获取用户逻辑执行实体根据上报周期,上报的固定格式信息;
存活状态更新子模块被配置为根据上报的固定格式信息,更新用户逻辑执行实体的存活状态。
可选地,状态返回值发送模块还包括固定格式信息上报时间获取子模块;
固定格式信息上报时间获取子模块被配置为获取上报的固定格式信息的上报时间;
存活状态更新子模块还被配置为根据上报的固定格式信息与上报时间,更新用户逻辑执行实体的存活状态。
结合图4所示,本公开实施例提供一种用于分布式并发应用服务的装置,包括处理器(processor)100和存储器(memory)101。可选地,该装置还可以包括通信接口(Communication Interface)102和总线103。其中,处理器100、通信接口102、存储器101可以通过总线103完成相互间的通信。通信接口102可以用于信息传输。处理器100可以调用存储器101中的逻辑指令,以执行上述实施例的用于分布式并发应用服务的方法。
此外,上述的存储器101中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器101作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器100通过运行存储在存储器101中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于分布式并发应用服务的方法。
存储器101可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器101可以包括高速随机存取存储器,还可以包括非易失性存储器。
本公开实施例提供了一种产品(例如:计算机、手机等),包含上述的用于分布式并发应用服务的装置。
本公开实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述用于分布式并发应用服务的方法。
本公开实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述用于分布式并发应用服务的方法。
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (10)
1.一种用于分布式并发应用服务的方法,其特征在于,包括:
服务管理端获取用户发出的事件申请;
根据事件申请,生成符合设定数量的容器;
在容器中加载用户逻辑执行实体;
确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值。
3.根据权利要求1所述的方法,其特征在于,所述根据事件申请,生成符合设定数量的容器,还包括:
获取所述事件申请的目标事件类型;
根据事件类型与容器数量的映射关系,确定所述目标事件类型对应的容器数量为所述设定数量。
4.根据权利要求1所述的方法,其特征在于,所述在容器中加载用户逻辑执行实体,包括:
在容器中启动用户逻辑执行实体;
获取用户逻辑执行实体提交的注册请求;
根据注册请求,建立用户逻辑执行实体与服务管理端的通信连接关系。
5.根据权利要求1所述的方法,其特征在于,所述确定事件申请对应的事件逻辑参数,配置所述事件逻辑参数至用户逻辑执行实体,包括:
根据事件申请,确定容器配置的资源数量;
根据容器配置的资源数量,确定容器中用户逻辑执行实体的处理能力;
服务管理端发送符合用户逻辑执行实体处理能力的事件逻辑参数。
6.根据权利要求2所述的方法,其特征在于,所述服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值,还包括:
增加容器监控,用以监控用户逻辑执行实体的运行状态;
根据用户逻辑执行实体的运行状态,确定用户逻辑执行实体的存活状态。
7.根据权利要求6所述的方法,其特征在于,所述根据用户逻辑执行实体的运行状态,确定用户逻辑执行实体的存活状态,包括:
根据检测周期,检测用户逻辑执行实体的运行状态;
根据用户逻辑执行实体的运行状态,更新用户逻辑执行实体的存活状态。
8.根据权利要求2所述的方法,其特征在于,所述服务管理端根据用户逻辑执行实体运行所述事件逻辑参数的状态,发送状态返回值,还包括:
接收用户逻辑执行实体根据上报周期,上报固定格式信息;
服务管理端根据上报的固定格式信息,更新用户逻辑执行实体的存活状态。
9.一种用于分布式并发应用服务的装置,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在运行所述程序指令时,执行如权利要求1至8任一项所述的用于分布式并发应用服务的方法。
10.一种设备,其特征在于,包括如权利要求9所述的用于分布式并发应用服务的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110620289.7A CN113282373A (zh) | 2021-06-03 | 2021-06-03 | 用于分布式并发应用服务的方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110620289.7A CN113282373A (zh) | 2021-06-03 | 2021-06-03 | 用于分布式并发应用服务的方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113282373A true CN113282373A (zh) | 2021-08-20 |
Family
ID=77283186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110620289.7A Pending CN113282373A (zh) | 2021-06-03 | 2021-06-03 | 用于分布式并发应用服务的方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113282373A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016165673A1 (zh) * | 2015-09-25 | 2016-10-20 | 中兴通讯股份有限公司 | Jslee容器系统,处理方法及网络融合的系统 |
WO2017049912A1 (zh) * | 2015-09-25 | 2017-03-30 | 中兴通讯股份有限公司 | 一种jslee容器的业务处理方法及系统 |
CN106713469A (zh) * | 2016-12-29 | 2017-05-24 | 上海智臻智能网络科技股份有限公司 | 用于分布式容器的动态加载方法、装置及系统 |
CN109791499A (zh) * | 2016-09-26 | 2019-05-21 | 瑞典爱立信有限公司 | 基于事件驱动策略的分布式容器管理系统 |
CN111279314A (zh) * | 2017-09-30 | 2020-06-12 | 甲骨文国际公司 | 利用微服务容器在多租户api网关中提供租户隔离 |
-
2021
- 2021-06-03 CN CN202110620289.7A patent/CN113282373A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016165673A1 (zh) * | 2015-09-25 | 2016-10-20 | 中兴通讯股份有限公司 | Jslee容器系统,处理方法及网络融合的系统 |
WO2017049912A1 (zh) * | 2015-09-25 | 2017-03-30 | 中兴通讯股份有限公司 | 一种jslee容器的业务处理方法及系统 |
CN109791499A (zh) * | 2016-09-26 | 2019-05-21 | 瑞典爱立信有限公司 | 基于事件驱动策略的分布式容器管理系统 |
CN106713469A (zh) * | 2016-12-29 | 2017-05-24 | 上海智臻智能网络科技股份有限公司 | 用于分布式容器的动态加载方法、装置及系统 |
CN111279314A (zh) * | 2017-09-30 | 2020-06-12 | 甲骨文国际公司 | 利用微服务容器在多租户api网关中提供租户隔离 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108737270B (zh) | 一种服务器集群的资源管理方法和装置 | |
US7523454B2 (en) | Apparatus and method for routing a transaction to a partitioned server | |
CN109729106B (zh) | 处理计算任务的方法、系统和计算机程序产品 | |
US10616139B1 (en) | Reducing quota access | |
CN108965461A (zh) | 服务治理方法、装置及dubbo服务系统 | |
CN108776934A (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
CN106790092B (zh) | 远程过程调用服务端控制系统及方法 | |
KR20160087706A (ko) | 가상화 플랫폼을 고려한 분산 데이터 처리 시스템의 자원 할당 장치 및 할당 방법 | |
EP3399413B1 (en) | Component logical threads quantity adjustment method and device | |
CN111885184A (zh) | 高并发场景下热点访问关键字处理方法和装置 | |
CN113377866A (zh) | 一种虚拟化数据库代理服务的负载均衡方法及装置 | |
CN112307105A (zh) | 基于多线程的定时任务运行方法、装置、设备及存储介质 | |
CN110365743B (zh) | 一种基于Zookeeper实现的支持多种可自定义负载算法的负载均衡器实现方法 | |
CN115426361A (zh) | 分布式客户端打包方法、装置、主服务器及存储介质 | |
CN109413117B (zh) | 分布式数据计算方法、装置、服务器及计算机存储介质 | |
CN112860421B (zh) | 用于作业处理的方法、设备和计算机程序产品 | |
CN111752728B (zh) | 消息传输方法及装置 | |
CN117499403A (zh) | 算力网络的计算任务调度方法及装置 | |
CN109614242B (zh) | 一种计算能力共享方法、装置、设备及介质 | |
CN113282373A (zh) | 用于分布式并发应用服务的方法、装置和设备 | |
CN111143033A (zh) | 基于可伸缩操作系统的操作执行方法及装置 | |
US11595471B1 (en) | Method and system for electing a master in a cloud based distributed system using a serverless framework | |
CN109005071B (zh) | 一种决策部署方法和调度设备 | |
Pacher | Two‐level extensions of an artificial hormone system | |
CN113504981A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210820 |