CN116302209B - 应用进程加速启动的方法、分布式系统、节点和存储介质 - Google Patents
应用进程加速启动的方法、分布式系统、节点和存储介质 Download PDFInfo
- Publication number
- CN116302209B CN116302209B CN202310537945.6A CN202310537945A CN116302209B CN 116302209 B CN116302209 B CN 116302209B CN 202310537945 A CN202310537945 A CN 202310537945A CN 116302209 B CN116302209 B CN 116302209B
- Authority
- CN
- China
- Prior art keywords
- node
- acceleration
- application process
- file
- starting
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 251
- 230000008569 process Effects 0.000 title claims abstract description 171
- 230000001133 acceleration Effects 0.000 claims abstract description 218
- 238000005516 engineering process Methods 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 12
- 230000006399 behavior Effects 0.000 claims description 3
- 230000010354 integration Effects 0.000 claims description 3
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了应用进程加速启动的方法、分布式系统、节点和存储介质。该方法包括:分布式系统的第一节点启动应用进程后,根据预设的加速特性生成加速文件,并将加速文件存储到共享存储目录中,加速文件用于加速启动应用进程,第一节点为分布式系统中第一个启动应用进程的节点;分布式系统的第二节点启动应用进程时,根据预设的加速特性生成启动参数,并从共享存储目录中获取加速文件,以基于启动参数和加速文件加速启动应用进程,实现了分布式系统中应用进程的自动化启动加速。
Description
技术领域
本申请涉及云领域,并且更具体地,涉及应用进程加速启动的方法、分布式系统、节点和存储介质。
背景技术
Java应用由于动态类加载以及解释执行等特点,导致其启动速度相对于其他应用来说较慢,存在启动时间普遍较长的问题,目前有一些优化启动的启动加速技术,这些启动加速技术每一种都有特定的使用流程,需要手工按照使用流程执行相应操作来实现。
但是,在实际的生产环境中,应用通常以分布式系统部署,分布式系统中的应用节点数量较多,通过手工操作来启动加速的方案难以在生产环境中应用。
发明内容
本申请提供了应用进程加速启动的方法、分布式系统、节点和存储介质,以实现分布式系统中应用进程的自动化启动加速。
第一方面,本申请提供了一种应用进程加速启动的方法,应用于分布式系统,所述方法包括:
所述分布式系统的第一节点启动应用进程后,根据预设的加速特性生成加速文件,并将所述加速文件存储到共享存储目录中,所述加速文件用于加速启动应用进程,所述第一节点为所述分布式系统中第一个启动应用进程的节点;
所述分布式系统的第二节点启动应用进程时,根据所述预设的加速特性生成启动参数,并从所述共享存储目录中获取所述加速文件,以基于所述启动参数和所述加速文件加速启动应用进程。
在一种实现方式中,还包括:
所述第一节点在启动应用进程时,确定所述共享存储目录为空,则为所述共享存储目录创建文件锁;
所述第一节点将所述加速文件存储到共享存储目录中之后,所述方法还包括:
所述第一节点删除所述共享存储目录的文件锁。
在一种实现方式中,所述为所述共享存储目录创建文件锁之后,所述方法还包括:
将所述第一节点的应用进程设置为记录模式,所述记录模式用于表示所述第一节点的应用进程会产生所述加速文件。
在一种实现方式中,所述根据所述预设的加速特性生成启动参数之前,所述方法还包括:
将所述第二节点的应用集成设置为重放模式,所述重放模式用于表示所述第二节点的应用进程使用所述加速文件。
在一种实现方式中,还包括:
所述分布式系统的第三节点启动应用进程时,若确定所述共享存储目录存在文件锁,则所述第三节点将所述第三节点的应用进程设置为正常模式,所述正常模式用于表示所述第三节点的应用进程无加速行为。
第二方面,本申请提供了一种应用进程加速启动的方法,应用于分布式系统的第一节点,所述方法包括:
所述第一节点启动应用进程后,根据预设的加速特性生成加速文件,所述加速文件用于加速启动应用进程,所述第一节点为所述分布式系统中第一个启动应用进程的节点;
所述第一节点将所述加速文件存储到共享存储目录中,以使所述分布式系统的第二节点从所述共享存储目录中获取所述加速文件并基于所述加速文件加速启动应用进程。
第三方面,本申请提供了一种应用进程加速启动的方法,应用于分布式系统的第二节点,所述方法包括:
所述第二节点启动应用进程时,根据预设的加速特性生成启动参数,并从共享存储目录中获取加速文件,所述加速文件是所述分布式系统的第一节点启动应用进程后根据所述预设的加速特性生成的,所述第一节点为所述分布式系统中第一个启动应用进程的节点;
所述第二节点基于所述启动参数和所述加速文件加速启动应用进程。
第四方面,本申请提供了一种分布式系统,包括:第一节点和第二节点,所述第一节点和所述第二节点用于实现如第一方面所述的方法。
第五方面,本申请提供了一种分布式系统节点,包括:存储器和处理器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中存储的计算机程序,所述计算机程序运行时使得所述处理器执行第二方面或第三方面所述的方法。
第六方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被处理器执行时,使得所述处理器执行如第一方面、第二方或第三方面所述的方法。
在本申请提供的应用进程加速启动的方法、分布式系统、节点和存储介质中,无论应用进程采用哪种启动加速技术,分布式系统中第一个启动应用进程的节点基于该启动加速技术即加速特性,生成对应的加速文件并放入共享存储目录中,之后启动应用进程的节点可以直接基于该启动加速技术生成启动参数并从共享存储目录中获取相应的加速文件,以实现加速启动,用户无需执行手工操作,更无需在应用不同的启动加速技术时执行不同的操作流程,可广泛应用于生产环境中的分布式系统。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种应用进程加速启动的方法的流程示意图一;
图2是本申请实施例提供的一种应用进程加速启动方法的场景示意图;
图3是本申请实施例提供的一种应用进程加速启动的方法的流程示意图二;
图4是本申请实施例提供的一种应用进程加速启动的方法的流程示意图三;
图5是本申请实施例提供的一种应用进程加速启动装置的结构示意图一;
图6是本申请实施例提供的一种应用进程加速启动装置的结构示意图二;
图7是本申请实施例提供的分布式系统节点的示意性框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以类数据共享(Class-Data Sharing,CDS)技术为例对启动加速技术中进行介绍,CDS是一种通过提供将Java的类写入到Archive文件中,然后在不同进程中共享类数据,从而减少JVM启动时的类加载开销的技术,其执行需要以下3个步骤:
1.用户修改启动参数,执行相关命令生成需要加速的文件列表;
2.用户执行相关命令,以基于文件列表生成需要加速的二进制文件,即加速文件;
3.用户修改启动参数指定第2步生成的加速文件,从而达到启动加速的效果。
可以看出,上述每个步骤都需要用户手工执行操作,对于具有大量应用节点的分布式系统,这种手工执行的方式操作十分复杂,因此这种方案在生产环境难以应用。此外,除了上述示例的CDS之外,其他的启动加速技术也具有各自特定的执行步骤,每种启动加速技术的执行步骤都不相同,对于用户来说,若改变使用的启动加速技术,则其需要执行的操作也有所改变,对于用户来说使用不便,这同样不利于启动加速技术在生产环境中广泛应用。
有鉴于此,本申请实施例中提出一种统一的启动加速方案框架,该方案对用户层面屏蔽了启动加速技术的具体实现细节,用户只需要关注采用哪种启动加速技术,之后的步骤通过本申请实施例的方案自动完成,分布式系统中第一个启动应用进程的节点基于预设的加速特性生成加速文件并放入共享存储目录中,之后启动应用进程的节点可以直接基于预设的加速特性生成启动参数并从共享存储目录中获取加速文件,以实现加速启动,通过上述过程实现对分布式系统的自动化启动加速。以下通过具体实施例进行说明。
图1是本申请实施例提供的一种应用进程加速启动的方法的流程示意图一。该方法应用于分布式系统,分布式系统的各节点上部署相同的应用,分布式系统的节点可以为虚拟机节点或物理机节点,分布式系统可以部署于云环境。本申请实施例中的应用进程可以为Java进程,也可以是其他需要启动加速的应用进程。
如图1所示,该方法包括:
S101、分布式系统的第一节点启动应用进程后,根据预设的加速特性生成加速文件,并将加速文件存储到共享存储目录中,加速文件用于加速启动应用进程,第一节点为分布式系统中第一个启动应用进程的节点。
分布式系统的各节点上部署应用的时间可以不同,对于已部署应用的节点,启动应用进程的时间也可以不同。分布式系统中预设了应用进程的加速特性,即应用进程采用的启动加速技术。应用进程采用的启动加速技术可以是在部署应用进程时预先选择开启的。
第一个启动应用进程的节点按照正常启动流程进行启动,并在启动之后,基于加速特征生成相应的加速文件,该加速文件也就是采用该启动加速技术进行启动加速所需要的文件,以应用进程预设的加速特性为CDS,则第一节点的应用进程启动后,基于加速特性为CDS,自动完成CDS对应的启动参数转换以及生成CDS对应的加速文件等一系列操作,例如该加速文件是前述示例步骤中的二进制文件。对于用户来说,只需要预先选择开启的启动加速技术,第一节点可自动完成加速文件生成。
共享存储目录是预先设置的分布式系统的各节点均可以访问的存储目录,第一节点将加速文件存储到共享存储目录后,其他节点可以在启动应用进程时访问共享存储目录并从共享存储目录中获取该加速文件。
S102、分布式系统的第二节点启动应用进程时,根据预设的加速特性生成启动参数,并从共享存储目录中获取加速文件,以基于启动参数和加速文件加速启动应用进程。
分布式系统的第二节点是在第一节点之后启动应用进程的任一节点,分布式系统中各节点开启的启动加速技术是相同的,也就是第二节点预设的加速特性和第一节点预设的加速特性是相同的,分布式系统中各节点实现启动加速所需要的加速文件是相同的。由于第一节点已经生成加速文件并将其放入共享存储目录,因此,第二节点无需再生成加速文件,第二节点可直接基于预设的加速特性生成启动参数,也就是将预设的加速特性转换为相应的启动参数,再结合从共享存储目录中获取的加速文件来加速启动应用进程。对于用户来说,只需要预先选择开启的启动加速技术,第二节点可自动完成启动参数转换并获取加速文件,实现启动加速。
通过本申请实施例的方法,无论应用进程采用哪种启动加速技术,分布式系统中第一个启动应用进程的节点基于预设的加速特性,也就是启动加速技术,生成对应的加速文件并放入共享存储目录中,之后启动应用进程的节点可以直接基于预设的加速特性生成启动参数并从共享存储目录中获取加速文件,以实现加速启动,用户无需执行手工操作,更无需在应用不同的启动加速技术时应用不同的操作流程,可广泛应用于生产环境中的分布式系统。
在上述实施例的基础上,对共享存储目录进行说明,共享存储目录是预先设置的分布式文件系统的各节点均可以访问的存储目录。本申请实施例中由第一个启动应用进程的节点产生加速文件并将其放入共享存储目录中,为了避免两个节点的应用进程产生冲突,例如两个节点的应用进程同时启动,并产生加速文件放入共享存储目录中,本申请实施例中对共享存储目录采用了文件锁机制,第一节点在启动应用进程时,确定共享存储目录为空,且无文件锁,即还没其他节点的应用进程生成或即将生成加速文件,第一节点为第一个启动应用进程的节点,则第一节点的应用进程为共享存储目录创建文件锁,以避免其他节点的应用进程在此期间修改共享存储目录。
可选的,第一节点的应用进程还将自身设置为记录(Trace)模式,记录模式用于表示第一节点的应用进程会产生加速文件,也可以称为,第一节点的应用进程将自身的角色设置为Trace。之后,第一节点启动应用进程后,根据预设的加速特性生成加速文件,并将加速文件存储到共享存储目录中,并删除共享存储目录的文件锁。
可选的,分布式系统的第三节点启动应用进程时,若确定共享存储目录存在文件锁,则第三节点将第三节点的应用进程设置为正常(Normal)模式,正常模式用于表示第三节点的应用进程无加速行为,也可以称为,第三节点的应用进程将自身的角色设置为Normal。第三节点启动应用进程时,若共享存储目录存在文件锁,则表示已经有应用进程正在生成加速文件或即将生成加速文件,但还未生成完整的加速文件,此时第三节点按照正常启动流程进行启动。
第二节点启动应用进程时,共享存储目录中已经存储有完整的加速文件,且已不存在文件锁,将第二节点的应用进程设置为重放(Replay)模式,重放模式用于表示第二节点的应用进程使用加速文件,也可以称为,第二节点的应用进程将自身的角色设置为Replay。之后,第二节点根据预设的加速特性生成启动参数,并从共享存储目录中获取加速文件,以基于启动参数和加速文件加速启动应用进程。
本申请实施例中,共享缓存目录用来存放加速文件,同时利用文件锁机制,在分布式系统中,第一个获得文件锁的应用进程的角色为Trace,以生成加速文件,其它的应用进程则根据共享缓存目录中的加速文件的完整性决定当前进程角色为Replay还是Normal,角色为Replay的应用进程可以利用加速文件进行启动加速,实现了分布式系统节点的启动加速。
以下结合图2进行示例说明。
图2中的进程1为第一节点的应用进程,进程2为第三节点的应用进程,进程3、进程4至进程N分别为任一第二节点的应用进程。
1.第1个启动的进程1发现共享存储目录为空且无文件锁,则创建文件锁,同时将自己的角色设置为Trace。
2.第2个启动的进程2启动时发现共享存储目录中已经存在文件锁,则将自己的角色设置为Normal,并按照正常启动流程启动。
3.第1个启动的进程1在特定时机,例如启动完成以后,根据用户开启的加速特性产生加速文件,并保存到共享存储目录中。
4.加速文件产生保存完成以后,进程1删除文件锁。
5.后续启动的进程3、进程4或进程N,在启动时,由于共享缓存目录中已经有加速文件,且无文件锁,将自己的角色设置为Replay,根据开启的加速特性自动转换相应的启动参数,同时将加速文件映射到进程的内存地址空间,从而实现启动加速。
无论分布式系统的节点采用哪种启动加速技术,上述方案框架均可通用。以下进行示例说明。在分布式系统采用启动加速技术1,即加速特性1的场景中,上述实施例的过程为:
1.第1个启动的进程1发现共享存储目录为空且无文件锁,则创建文件锁,同时将自己的角色设置为Trace。
2.第2个启动的进程2启动时发现共享存储目录中已经存在文件锁,则将自己的角色设置为Normal,并按照正常启动流程启动。
3.第1个启动的进程1在特定时机,例如启动完成以后,根据用户开启的加速特性1产生加速文件1,并保存到共享存储目录中。
4.加速文件1产生保存完成以后,进程1删除文件锁。
5.后续启动的进程3、进程4或进程N,在启动时,由于共享缓存目录中已经有加速文件,且无文件锁,将自己的角色设置为Replay,根据开启的加速特性1自动转换相应的启动参数1,同时将加速文件1映射到进程的内存地址空间,从而实现启动加速。
在分布式系统采用启动加速技术2,即加速特性2的场景中,上述实施例的过程为:
1.第1个启动的进程1发现共享存储目录为空且无文件锁,则创建文件锁,同时将自己的角色设置为Trace。
2.第2个启动的进程2启动时发现共享存储目录中已经存在文件锁,则将自己的角色设置为Normal,并按照正常启动流程启动。
3.第1个启动的进程1在特定时机,例如启动完成以后,根据用户开启的加速特性2产生加速文件2,并保存到共享存储目录中。
4.加速文件2产生保存完成以后,进程1删除文件锁。
5.后续启动的进程3、进程4或进程N,在启动时,由于共享缓存目录中已经有加速文件,且无文件锁,将自己的角色设置为Replay,根据开启的加速特性2自动转换相应的启动参数2,同时将加速文件2映射到进程的内存地址空间,从而实现启动加速。
可以看出,本申请实施例的方案对用户屏蔽了不同启动加速技术的细节,用户只需选择使用的启动加速技术,启动加速技术中涉及的参数转换、加速文件生成由节点自动完成,用户无需执行手工操作,更无需在应用不同的启动加速技术时操作不同的流程,可广泛应用于生产环境中的分布式系统。
图3是本申请实施例提供的一种应用进程加速启动的方法的流程示意图二。该方法应用于分布式系统的第一节点。如图3所示,该方法包括:
S301、第一节点启动应用进程后,根据预设的加速特性生成加速文件,加速文件用于加速启动应用进程,第一节点为分布式系统中第一个启动应用进程的节点。
S302、第一节点将加速文件存储到共享存储目录中,以使分布式系统的第二节点从共享存储目录中获取加速文件并基于加速文件加速启动应用进程。
第一节点执行的方法参见前述实施例的说明,此处不再赘述。
图4是本申请实施例提供的一种应用进程加速启动的方法的流程示意图三。该方法应用于分布式系统的第二节点。如图4所示,该方法包括:
S401、第二节点启动应用进程时,根据预设的加速特性生成启动参数,并从共享存储目录中获取加速文件,加速文件是分布式系统的第一节点启动应用进程后根据预设的加速特性生成的,第一节点为分布式系统中第一个启动应用进程的节点。
S402、第二节点基于启动参数和加速文件加速启动应用进程。
第二节点执行的方法参见前述实施例的说明,此处不再赘述。
图5是本申请实施例提供的一种应用进程加速启动装置的结构示意图一。如图5所示,该装置500包括:
生成模块501,用于在第一节点启动应用进程后,根据预设的加速特性生成加速文件,加速文件用于加速启动应用进程,第一节点为分布式系统中第一个启动应用进程的节点。
存储模块502,用于将加速文件存储到共享存储目录中,以使分布式系统的第二节点从共享存储目录中获取加速文件并基于加速文件加速启动应用进程。
在一种实现方式中,生成模块501用于,
在第一节点启动应用进程时,确定共享存储目录为空,则为共享存储目录创建文件锁;以及,
存储模块502用于,
在将加速文件存储到共享存储目录中之后,删除共享存储目录的文件锁。
在一种实现方式中,生成模块501用于,
将第一节点的应用进程设置为记录模式,记录模式用于表示第一节点的应用进程会产生加速文件。
本申请实施例的装置用于实现前述实施例中第一节点实现的方法,其实现原理和技术效果类似,此处不再赘述。
图6是本申请实施例提供的一种应用进程加速启动装置的结构示意图二。如图6所示,该装置600包括:
获取模块601,用于在第二节点启动应用进程时,根据预设的加速特性生成启动参数,并从共享存储目录中获取加速文件,加速文件是分布式系统的第一节点启动应用进程后根据预设的加速特性生成的,第一节点为分布式系统中第一个启动应用进程的节点。
加速模块602,用于基于启动参数和加速文件加速启动应用进程。
在一种实现方式中,获取模块601用于,
将第二节点的应用集成设置为重放模式,重放模式用于表示第二节点的应用进程使用加速文件。
本申请实施例的装置用于实现前述实施例中第二节点实现的方法,其实现原理和技术效果类似,此处不再赘述。
图7是本申请实施例提供的分布式系统节点的示意性框图。如图7所示,该分布式系统节点700可以包括至少一个处理器701,用于实现本申请实施例提供的文件输出方法或文件下载方法。该分布式系统节点700可以为前述实施例中的第一节点、第二节点或第三节点。
可选地,该分布式系统节点700还包括至少一个存储器702,用于存储程序指令和/或数据。存储器702和处理器701耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器701可能和存储器702协同操作。处理器701可能执行存储器702中存储的程序指令。该至少一个存储器中的至少一个可以包括于处理器中。
可选地,该分布式系统节点700还包括通信接口703,用于通过传输介质和其它设备进行通信,从而用于分布式系统节点700可以和其它设备进行通信。该通信接口703例如可以是收发器、接口、总线、电路或者能够实现收发功能的装置。处理器701可利用通信接口703收发数据和/或信息,并用于实现本申请实施例提供的方法。具体参见前文实施例中的详细描述,此处不做赘述。
本申请实施例中不限定上述处理器701、存储器702以及通信接口703之间的具体连接介质。本申请实施例在图7中以处理器701、存储器702以及通信接口703之间通过总线704连接。总线704在图7中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,本申请实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请还提供了一种分布式系统,包括:第一节点和第二节点,第一节点和第二节点用于实现前述实施例中的方法。可选的,该分布式系统还可以包括前述实施例中的第三节点。
本申请还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)。当该计算机程序被运行时,使得计算机执行如前述任一实施例中的方法。
本说明书中使用的术语“单元”、“模块”等,可用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各种说明性逻辑块(illustrative logical block)和步骤(step),能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。在本申请所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,各功能单元的功能可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令(程序)。在计算机上加载和执行该计算机程序指令(程序)时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solidstate disk,SSD))等。
该功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种应用进程加速启动的方法,其特征在于,应用于分布式系统,所述方法包括:
所述分布式系统的第一节点启动应用进程后,根据预设的加速特性生成加速文件,并将所述加速文件存储到共享存储目录中,所述预设的加速特性用于指示应用进程采用的启动加速技术,所述加速文件用于加速启动应用进程,所述第一节点为所述分布式系统中第一个启动应用进程的节点;
所述分布式系统的第二节点启动应用进程时,根据所述预设的加速特性生成启动参数,并从所述共享存储目录中获取所述加速文件,以基于所述启动参数和所述加速文件加速启动应用进程。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述第一节点在启动应用进程时,确定所述共享存储目录为空,则为所述共享存储目录创建文件锁;
所述第一节点将所述加速文件存储到共享存储目录中之后,所述方法还包括:
所述第一节点删除所述共享存储目录的文件锁。
3.根据权利要求2所述的方法,其特征在于,所述为所述共享存储目录创建文件锁之后,所述方法还包括:
将所述第一节点的应用进程设置为记录模式,所述记录模式用于表示所述第一节点的应用进程会产生所述加速文件。
4.根据权利要求3所述的方法,其特征在于,所述根据所述预设的加速特性生成启动参数之前,所述方法还包括:
将所述第二节点的应用集成设置为重放模式,所述重放模式用于表示所述第二节点的应用进程使用所述加速文件。
5.根据权利要求2所述的方法,其特征在于,还包括:
所述分布式系统的第三节点启动应用进程时,若确定所述共享存储目录存在文件锁,则所述第三节点将所述第三节点的应用进程设置为正常模式,所述正常模式用于表示所述第三节点的应用进程无加速行为。
6.一种应用进程加速启动的方法,其特征在于,应用于分布式系统的第一节点,所述方法包括:
所述第一节点启动应用进程后,根据预设的加速特性生成加速文件,所述预设的加速特性用于指示应用进程采用的启动加速技术,所述加速文件用于加速启动应用进程,所述第一节点为所述分布式系统中第一个启动应用进程的节点;
所述第一节点将所述加速文件存储到共享存储目录中,以使所述分布式系统的第二节点从所述共享存储目录中获取所述加速文件并基于所述加速文件加速启动应用进程。
7.一种应用进程加速启动的方法,其特征在于,应用于分布式系统的第二节点,所述方法包括:
所述第二节点启动应用进程时,根据预设的加速特性生成启动参数,并从共享存储目录中获取加速文件,所述预设的加速特性用于指示应用进程采用的启动加速技术,所述加速文件是所述分布式系统的第一节点启动应用进程后根据所述预设的加速特性生成的,所述第一节点为所述分布式系统中第一个启动应用进程的节点;
所述第二节点基于所述启动参数和所述加速文件加速启动应用进程。
8.一种分布式系统,其特征在于,包括:第一节点和第二节点,所述分布式系统用于实现如权利要求1-5中任一项所述的方法。
9.一种分布式系统节点,其特征在于,包括:存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器中存储的计算机程序,所述计算机程序运行时使得所述处理器执行权利要求6或7中所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310537945.6A CN116302209B (zh) | 2023-05-15 | 2023-05-15 | 应用进程加速启动的方法、分布式系统、节点和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310537945.6A CN116302209B (zh) | 2023-05-15 | 2023-05-15 | 应用进程加速启动的方法、分布式系统、节点和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116302209A CN116302209A (zh) | 2023-06-23 |
CN116302209B true CN116302209B (zh) | 2023-08-04 |
Family
ID=86801640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310537945.6A Active CN116302209B (zh) | 2023-05-15 | 2023-05-15 | 应用进程加速启动的方法、分布式系统、节点和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116302209B (zh) |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102289380A (zh) * | 2010-06-21 | 2011-12-21 | 上海中标软件有限公司 | firefox启动加速方法 |
CN106528188A (zh) * | 2015-09-09 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种应用加速方法及装置 |
CN106844033A (zh) * | 2017-01-23 | 2017-06-13 | 努比亚技术有限公司 | 一种应用快速启动方法和终端 |
CN108763299A (zh) * | 2018-04-19 | 2018-11-06 | 贵州师范大学 | 一种大规模数据处理计算加速系统 |
CN109745703A (zh) * | 2018-12-29 | 2019-05-14 | 网易(杭州)网络有限公司 | 自适应加速方法、装置及存储介质 |
CN110262847A (zh) * | 2019-05-14 | 2019-09-20 | 百度(中国)有限公司 | 应用程序启动加速方法、装置及机器可读存储介质 |
CN111625289A (zh) * | 2020-05-06 | 2020-09-04 | 小船出海教育科技(北京)有限公司 | 应用程序快速启动方法、装置和电子设备 |
CN112221121A (zh) * | 2020-10-20 | 2021-01-15 | 腾讯科技(深圳)有限公司 | 应用软件联网加速方法、装置及存储介质 |
CN112370774A (zh) * | 2020-11-12 | 2021-02-19 | 网易(杭州)网络有限公司 | 一种在游戏加速器中启动游戏的方法及装置 |
CN112596807A (zh) * | 2020-12-07 | 2021-04-02 | 腾讯科技(深圳)有限公司 | 应用程序加速方法、装置、计算机设备及存储介质 |
CN112650541A (zh) * | 2019-10-09 | 2021-04-13 | 深圳Tcl新技术有限公司 | 一种应用程序启动加速方法、系统、设备及存储介质 |
CN112667361A (zh) * | 2020-12-31 | 2021-04-16 | 北京北信源软件股份有限公司 | 基于系统虚拟机的管理方法、装置、电子设备及存储介质 |
CN112988860A (zh) * | 2019-12-18 | 2021-06-18 | 菜鸟智能物流控股有限公司 | 数据加速处理方法、装置及电子设备 |
CN113190242A (zh) * | 2021-06-08 | 2021-07-30 | 杭州朗澈科技有限公司 | 加速拉取镜像文件的方法和系统 |
CN114880293A (zh) * | 2022-05-17 | 2022-08-09 | 统信软件技术有限公司 | 一种软件启动加速方法及装置与计算设备 |
CN115460572A (zh) * | 2021-06-08 | 2022-12-09 | 腾讯科技(深圳)有限公司 | 应用程序加速方法、装置、设备及存储介质 |
CN116069744A (zh) * | 2021-11-01 | 2023-05-05 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、设备、存储介质及产品 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9525735B2 (en) * | 2013-10-30 | 2016-12-20 | Futurewei Technologies, Inc. | Lock elevation in a distributed file storage system |
-
2023
- 2023-05-15 CN CN202310537945.6A patent/CN116302209B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102289380A (zh) * | 2010-06-21 | 2011-12-21 | 上海中标软件有限公司 | firefox启动加速方法 |
CN106528188A (zh) * | 2015-09-09 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种应用加速方法及装置 |
CN106844033A (zh) * | 2017-01-23 | 2017-06-13 | 努比亚技术有限公司 | 一种应用快速启动方法和终端 |
CN108763299A (zh) * | 2018-04-19 | 2018-11-06 | 贵州师范大学 | 一种大规模数据处理计算加速系统 |
CN109745703A (zh) * | 2018-12-29 | 2019-05-14 | 网易(杭州)网络有限公司 | 自适应加速方法、装置及存储介质 |
CN110262847A (zh) * | 2019-05-14 | 2019-09-20 | 百度(中国)有限公司 | 应用程序启动加速方法、装置及机器可读存储介质 |
CN112650541A (zh) * | 2019-10-09 | 2021-04-13 | 深圳Tcl新技术有限公司 | 一种应用程序启动加速方法、系统、设备及存储介质 |
CN112988860A (zh) * | 2019-12-18 | 2021-06-18 | 菜鸟智能物流控股有限公司 | 数据加速处理方法、装置及电子设备 |
CN111625289A (zh) * | 2020-05-06 | 2020-09-04 | 小船出海教育科技(北京)有限公司 | 应用程序快速启动方法、装置和电子设备 |
CN112221121A (zh) * | 2020-10-20 | 2021-01-15 | 腾讯科技(深圳)有限公司 | 应用软件联网加速方法、装置及存储介质 |
CN112370774A (zh) * | 2020-11-12 | 2021-02-19 | 网易(杭州)网络有限公司 | 一种在游戏加速器中启动游戏的方法及装置 |
CN112596807A (zh) * | 2020-12-07 | 2021-04-02 | 腾讯科技(深圳)有限公司 | 应用程序加速方法、装置、计算机设备及存储介质 |
CN112667361A (zh) * | 2020-12-31 | 2021-04-16 | 北京北信源软件股份有限公司 | 基于系统虚拟机的管理方法、装置、电子设备及存储介质 |
CN113190242A (zh) * | 2021-06-08 | 2021-07-30 | 杭州朗澈科技有限公司 | 加速拉取镜像文件的方法和系统 |
CN115460572A (zh) * | 2021-06-08 | 2022-12-09 | 腾讯科技(深圳)有限公司 | 应用程序加速方法、装置、设备及存储介质 |
CN116069744A (zh) * | 2021-11-01 | 2023-05-05 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、设备、存储介质及产品 |
CN114880293A (zh) * | 2022-05-17 | 2022-08-09 | 统信软件技术有限公司 | 一种软件启动加速方法及装置与计算设备 |
Non-Patent Citations (1)
Title |
---|
P2P直播系统中节点启动过程优化;李晓林;王劲林;尤佳莉;;四川大学学报(工程科学版)(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116302209A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9361309B2 (en) | File synchronization method, electronic device and synchronization system | |
CN111954051B (zh) | 传输视频音频数据的方法、系统、云端服务器和存储介质 | |
CN110968477B (zh) | 一种获取备用bmc版本信息的方法、设备及介质 | |
CN110399227B (zh) | 一种数据访问方法、装置和存储介质 | |
CN112148678B (zh) | 一种文件访问方法、系统、设备以及介质 | |
WO2014107987A1 (en) | File presenting method and apparatus for a smart terminal | |
US20110214076A1 (en) | Method and apparatus for optimizing generation of user interface | |
EP4310691A1 (en) | Blockchain-based data processing method, apparatus, and device, and storage medium | |
CN111198777A (zh) | 数据处理方法、装置、终端及存储介质 | |
CN111694733A (zh) | 一种软件开发工具包sdk的api测试方法以及测试装置 | |
CN114997101A (zh) | 基于芯片验证系统的信号控制方法、系统、介质及设备 | |
CN112764823B (zh) | Nvr系统的启动方法、主机操作系统和数据通信方法 | |
CN112015408A (zh) | 组件渲染方法、装置、存储介质及电子装置 | |
CN111147340A (zh) | 一种对can总线接口进行网络化访问的方法、设备及介质 | |
CN116302209B (zh) | 应用进程加速启动的方法、分布式系统、节点和存储介质 | |
CN112162873B (zh) | 一种远程调用方法、电子装置和存储介质 | |
CN113377770A (zh) | 一种数据处理方法和装置 | |
EP3598738A1 (en) | Video synthesis method, apparatus and device, and video playing method, apparatus and device | |
US20150263917A1 (en) | Method and device for sharing data | |
CN110659035A (zh) | 一种基于bmc批量挂载镜像的方法和装置 | |
CN109558375B (zh) | 一种优化的文件存储方法、存储介质、设备及系统 | |
CN109189753B (zh) | 一种在hue中添加用户信息的方法及装置 | |
CN112068899A (zh) | 插件加载方法、装置、电子设备及存储介质 | |
CN110874305A (zh) | 用户操作的记录方法、装置及服务器 | |
CN110647331A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |