CN110287000B - 数据处理方法、装置、电子设备及存储介质 - Google Patents

数据处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN110287000B
CN110287000B CN201910457682.1A CN201910457682A CN110287000B CN 110287000 B CN110287000 B CN 110287000B CN 201910457682 A CN201910457682 A CN 201910457682A CN 110287000 B CN110287000 B CN 110287000B
Authority
CN
China
Prior art keywords
data
service data
distributed
currently
container
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
Application number
CN201910457682.1A
Other languages
English (en)
Other versions
CN110287000A (zh
Inventor
张旭华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN201910457682.1A priority Critical patent/CN110287000B/zh
Publication of CN110287000A publication Critical patent/CN110287000A/zh
Application granted granted Critical
Publication of CN110287000B publication Critical patent/CN110287000B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation

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

数据处理方法、装置、电子设备及存储介质
技术领域
本公开涉及计算机软件应用领域,尤其涉及数据处理方法、装置、电子设备及存储介质。
背景技术
相关技术中,虚拟机是运行着应用程序的虚拟计算机。以JVM为例。JVM为Java程序提供内存管理和运行时环境。对于一些基于Java的应用服务,如果JVM为应用服务分配的内存不合理,则导致应用服务出现故障。通常,在被应用服务处理的过程中,服务数据会发生内存膨胀。这使得服务数据被应用服务处理的过程中有可能开始的时候服务数据的大小并没有超过JVM为应用服务分配的内存,但经过各种转换后服务数据的大小超过了应用服务的分配内存。如果加载的服务数据的大小超过了应用服务的分配内存,则会导致频繁FullGC(JVM对堆空间的一次全堆垃圾回收),导致应用服务连接大量堵塞,影响服务数据的处理情况。
发明内容
本公开提供一种数据处理方法、装置、电子设备及存储介质,以至少解决相关技术中JVM为应用服务分配的内存不合理导致频繁Full GC的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种数据处理方法,包括:
收集来自多个服务器的状态数据;
获取当前待分配的服务数据;
根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据;以及
将所述多个子服务数据分别分配给所述多个服务器,每个所述服务器分别运行多个第一服务,所述多个第一服务接收并处理所述多个子服务数据。
可选地,所述状态数据是所述多个服务器处理在先的服务数据时产生的多维数据,则
所述根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据,包括:
根据所述状态数据和所述当前待分配的服务数据的数据指标为每个所述服务器构建信息矩阵,其中,所述信息矩阵的每一个元素具有不同的优先级;
为每个所述服务器的所述信息矩阵构建优先级矩阵;
根据所述信息矩阵和对应的所述优先级矩阵,计算得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值;以及
根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据。
可选地,所述根据所述信息矩阵和对应的所述优先级矩阵,计算得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值,包括:
通过蚁群算法优化所述信息矩阵对应的所述优先级矩阵;
对所述信息矩阵和对应的所述优先级矩阵进行矩阵运算,得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值。
可选地,所述的数据处理方法,还包括:
当首次获取所述待分配的服务数据时,根据所述待分配的服务数据自身的大小、所述多个服务器的性能和所述多个第一服务处理所述待分配的服务数据时的内存膨胀数据,将所述待分配的服务数据切分为多个子服务数据,使得所述多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值。
可选地,所述获取当前待分配的服务数据包括:将所述当前待分配的服务数据读取到容器中;则所述数据处理方法还包括:
在将所述当前待分配的服务数据读取到容器中之前,获取所述当前待分配的服务数据的大小;
如果所述当前待分配的服务数据的大小大于所述容器支持的最大使用内存,则由分布式文件系统切分后,再读取所述当前待分配的服务数据到所述容器中;
如果所述当前待分配的服务数据的大小小于或者等于所述容器支持的最大使用内存,且所述当前待分配的服务数据的大小大于所述容器当前的最大内存,则通知所述容器管理中心扩展所述容器的最大内存,再读取所述当前待分配的服务数据到所述容器中;以及
如果所述当前待分配的服务数据的大小小于或者等于所述容器当前的最大内存,则读取所述当前待分配的服务数据到所述容器中。
可选地,所述多个服务器的所述状态数据记录在服务列表中,所述状态数据包括:CPU使用数据、内存使用数据和网络使用数据,所述服务数据的数据指标,包括:数据类型、数据依赖深度和数据量。
可选地,当在先的待分配的服务数据被所述多个第一服务处理完毕后,获取所述当前待分配的服务数据。
根据本公开实施例的第二方面,提供一种数据处理装置,包括:
收集单元,被配置为执行收集来自多个服务器的状态数据;
获取单元,被配置为执行获取当前待分配的服务数据;
切分单元,被配置为执行根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据;以及
分配单元,被配置为执行将所述多个子服务数据分别分配给所述多个服务器,每个所述服务器分别运行多个第一服务,所述多个第一服务接收并处理所述多个子服务数据。
可选地,所述状态数据是所述多个服务器处理在先的服务数据时产生的多维数据,则
所述根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据,包括:
根据所述状态数据和所述当前待分配的服务数据的数据指标为每个所述服务器构建信息矩阵,其中,所述信息矩阵的每一个元素具有不同的优先级;
为每个所述服务器的所述信息矩阵构建优先级矩阵;
根据所述信息矩阵和对应的所述优先级矩阵,计算得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值;以及
根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据。
可选地,所述根据所述信息矩阵和对应的所述优先级矩阵,计算得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值,包括:
通过蚁群算法优化所述信息矩阵对应的所述优先级矩阵;
对所述信息矩阵和对应的所述优先级矩阵进行矩阵运算,得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值。
可选地,所述分配单元,还被配置为执行当首次获取所述待分配的服务数据时,根据所述待分配的服务数据自身的大小、所述多个服务器的性能和所述多个第一服务处理所述待分配的服务数据时的内存膨胀数据,将所述待分配的服务数据切分为多个子服务数据,使得所述多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值。
可选地,所述获取当前待分配的服务数据包括:将所述当前待分配的服务数据读取到容器中;则所述获取单元,还被配置为执行在将所述当前待分配的服务数据读取到容器中之前,获取所述当前待分配的服务数据的大小;
如果所述当前待分配的服务数据的大小大于所述容器支持的最大使用内存,则由分布式文件系统切分后,再读取所述当前待分配的服务数据到所述容器中;
如果所述当前待分配的服务数据的大小小于或者等于所述容器支持的最大使用内存,且所述当前待分配的服务数据的大小大于所述容器当前的最大内存,则通知所述容器管理中心扩展所述容器的最大内存,再读取所述当前待分配的服务数据到所述容器中;以及
如果所述当前待分配的服务数据的大小小于或者等于所述容器当前的最大内存,则读取所述当前待分配的服务数据到所述容器中。
可选地,所述多个服务器的所述状态数据记录在服务列表中,所述状态数据包括:CPU使用数据、内存使用数据和网络使用数据,所述服务数据的数据指标,包括:数据类型、数据依赖深度和数据量。
可选地,当在先的待分配的服务数据被所述多个第一服务处理完毕后,获取所述当前待分配的服务数据。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上所述的数据处理方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上所述的数据处理方法
根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序产品,所述计算机程序包括程序指令,当所述程序指令被移动终端执行时,使所述移动终端执行上述数据处理方法的步骤。
本公开的实施例提供的技术方案至少带来以下有益效果:
1)该数据处理方法将服务数据切分后分配给多个服务器,从而避免了单一服务器处理该服务数据出现的内存不足的问题;
2)根据各个服务器的状态数据和当前待分配的服务数据的数据指标对待分配的服务数据进行切分,能够根据状态数据和当前待分配的服务数据的数据指标对切分策略进行动态调整,可以进一步避免各个服务器的多个第一服务接收并处理子服务数据时出现内存不足,导致虚拟机频繁重新回收内存的问题;
3)由于状态数据反映了多个第一服务处理服务数据时的状态情况,当基于状态数据确定当前的服务数据的切分策略时,可以及时调整切分策略,确保能够满足各个服务器的多个第一服务的处理性能,从而能够提高整体处理效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的数据处理方法的流程图;
图2是根据一示例性实施例示出的数据处理方法的流程图;
图3是根据一示例性实施例示出的数据处理装置框图;
图4是根据一示例性实施例示出的一种执行数据处理方法的装置的框图;
图5是根据一示例性实施例示出的一种执行数据处理方法的装置的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在IT服务中,程序员使用某种编程语言将软件的设计思路转化为程序代码。在众多编程语言中,Java语言是非常重要的一种,语法复杂,抽象度高,不能直接翻译为机器码在机器上运行,所以设计了JVM,将Java程序运行在JVM上。JVM为Java程序提供内存管理和运行时环境。
JVM包括一套字节码指令集、一组寄存器、一个栈、一个堆和一个存储方法域。新生代空间是JVM堆空间的一个组成部分,JVM运行过程中新创建出的对象的存储位置。老年代空间是JVM堆空间的另一组成部分,用于配合回收算法将多次局部垃圾回收后仍然存活的对象保存至该区域。
JVM在进行内存垃圾回收(GC,Garbage Collection)时,主要是针对“堆”这部分内存进行的。目前,商用JVM的垃圾收集大都采用分代回收(Generational Collection)算法。分代回收算法将堆分成两个或多个对象,对象按照生存期分组,每一个子堆为一“代”对象服务。垃圾收集器将从最年轻的子堆(这个子堆称为新生代)中回收这些对象,如果一个对象经历了几次垃圾回收后仍然存活,那么,这个对象就成长为生存期更高的一代,当超过预设的生存期阈值时,该对象会被转移到另外一个子堆(这个子堆称为老年代)中去。
分代垃圾回收算法的实现包括次要垃圾回收(Minor GC)和全局垃圾回收(FullGC),Minor GC是JVM的一次小的垃圾回收动作,用于回收新生代空间中无效的对象。MinorGC动作在新生代空间不足时触发。Full GC是JVM对堆空间的一次全堆垃圾回收,在老年代空间不足时触发,回收堆空间中的无效对象。当Full GC发生时,Java程序的逻辑处理单元实际上处于停滞状态。而Full GC效率要比Minor GC低很多。可见,如果Full GC频繁发生,会大大降低Java程序的运行效率。
为此,本发明提供了一种数据处理方法,图1是根据一示例性实施例示出的数据处理方法的流程图。
在步骤S110中,收集来自多个服务器的状态数据。
在该步骤中,收集来自多个服务器的状态数据。这里的多个服务器上分别运行多个第一服务,例如,购物应用服务、通讯应用服务和短视频应用服务。状态数据是每个服务器上运行的多个第一服务处理在先的服务数据时产生的状态数据,可以是JVM内存使用数据,例如,垃圾回收的类型和时间、老年代内存已使用比例、老年代内存剩余大小、垃圾碎片比率。也可以是网络使用数据,例如,网络带宽、网络速率、吞吐量和时延。还可以是CPU使用数据,例如,CPU使用率、主频和浮数运算能力。
在步骤S120中,获取当前待分配的服务数据。
在该步骤中,获取当前待分配的服务数据。待分配的服务数据的数据指标,包括:数据类型、数据依赖深度和数据量。如果用户通过购物应用服务查找一款目标产品,则服务数据可以是与该款目标产品相关的所有产品信息,购物应用服务这一第一服务对与该款目标产品相关的所有产品信息进行智能排序,将排序靠前的产品信息推荐给用户。
在步骤S130中,根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据。
在该步骤中,根据多个服务器的状态数据和当前待分配的服务数据的数据指标,计算每个服务器处理当前待分配的服务数据的处理能力,根据计算结果,将当前待分配的服务数据切分为多个子服务数据。多个服务器的CPU使用率、主频、浮数运算能力、JVM内存使用数据和网络使用数据等状态数据严重影响每个服务器上运行的多个第一服务处理服务数据的处理能力。另外,待分配的服务数据的数据类型、数据依赖深度和数据量等数据指标也严重影响待分配的服务数据被多个第一服务处理的处理效率。根据多个服务器的状态数据和当前待分配的服务数据的数据指标,确定将当前待分配的服务数据切分的切分策略,将当前待分配的服务数据切分为多个子服务数据,以适应每个服务器上运行的多个第一服务处理服务数据的处理能力。例如,多个服务器上的第一服务为购物应用服务,根据多个服务器的状态数据和与目标产品相关的所有产品信息的数据指标,对多个服务器的JAVA虚拟机中可用内存进行预估,得到各个服务器有能力处理的产品信息服务数据的大小。将与该款目标产品相关的所有产品信息切分为多个产品信息子服务数据。
在步骤S140中,将所述多个子服务数据分别分配给所述多个服务器,每个所述服务器分别运行多个第一服务,所述多个第一服务接收并处理所述多个子服务数据。
在该步骤中,将多个子服务数据分别分配给多个服务器,每个服务器分别运行多个第一服务。多个第一服务分别接收并处理多个子服务数据。例如,将多个产品信息子服务数据分配给多个服务器,多个服务器上的购物应用服务分别对分配的产品信息子服务数据进行智能排序,最后将排序靠前的产品推荐给用户。
在本公开的实施例中,收集来自多个服务器的状态数据,获取当前待分配的服务数据,根据多个服务器的状态数据和当前待分配的服务数据的数据指标,计算每个服务器处理当前待分配的服务数据的处理能力,根据计算结果将当前待分配的服务数据切分为多个子服务数据,从而能够根据各个服务器的状态数据和待分配的服务数据的数据指标,控制切分的每个子服务数据的大小,避免了各个服务器的多个第一服务接收并处理子服务数据时出现内存不足,导致虚拟机频繁重新回收内存的问题,进而提高了子服务数据的处理效率。当能够合理利用多个服务器的内存时,服务数据的整体处理效率也得以提高。
可选地,通过根据多个服务器的状态数据和当前待分配的服务数据的数据指标,对多个服务器的虚拟机中可用内存进行预估,得到各个服务器有能力处理的子服务数据的大小,并据此将当前待分配的服务数据切分为多个子服务数据,使得多个第一服务能够高效地分别接收并处理多个子服务数据。
图2是根据一示例性实施例示出的数据处理方法的流程图。具体步骤包括:
在步骤S210中,当首次获取所述待分配的服务数据时,根据所述待分配的服务数据自身的大小、所述多个服务器的性能和所述多个第一服务处理所述待分配的服务数据时的内存膨胀数据,将所述待分配的服务数据切分为多个子服务数据,使得所述多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值。
在该步骤中,当首次获取待分配的服务数据时,根据待分配的服务数据自身的大小、多个服务器的性能和多个第一服务处理待分配的服务数据时的内存膨胀数据,将待分配的服务数据切分为多个子服务数据,使得多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值。多个第一服务在JAVA虚拟机中执行。由于多个服务器上运行的多个第一服务还没有开始处理服务数据,所以可以是根据多个服务器的性能,例如,服务器当前的CPU、内存和网络使用情况、待分配的服务数据自身的大小和预估的多个第一服务处理待分配的服务数据时可能产生的内存膨胀数据,以多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值为原则将待分配的服务数据切分为多个子服务数据。这里的多个第一服务处理待分配的服务数据时可能产生的内存膨胀数据可以是运维人员通过历史经验估测的。
例如,如果A服务器上的内存使用率较高,则给A服务器上的多个第一服务切分较小的子服务数据,而B服务器上的内存使用率较低,则给B服务器上的多个第一服务切分较大的子服务数据。运维人员通过历史经验估测C服务器上运行的多个第一服务处理待分配的服务数据时产生的内存膨胀数据较大,则给C服务器上的多个第一服务切分较小的子服务数据;运维人员通过历史经验估测D服务器上运行的多个第一服务处理待分配的服务数据时产生的内存膨胀数据较小,则给D服务器上的多个第一服务切分较大的子服务数据。
以下步骤S220-S250是重复执行的步骤。
在步骤S220中,收集来自多个服务器的状态数据。
在该步骤中,收集来自多个服务器的状态数据。状态数据表征多个服务器上运行的多个第一服务处理多个子服务数据的处理能力。状态数据是多个第一服务处理在先的服务数据时收集到的状态数据。多个服务器的状态数据记录在服务列表中,该状态数据包括:CPU使用数据、内存使用数据和网络使用数据。其中,CPU使用数据包括:CPU使用率、主频和浮数运算能力;内存使用数据例如为JVM内存使用数据,包括垃圾回收的类型和时间、老年代内存已使用比例、老年代内存剩余大小、垃圾碎片比率等数据;网络使用数据包括:网络带宽、网络速率、吞吐量和时延。
在步骤S230中,获取当前待分配的服务数据。
在该步骤中,获取当前待分配的服务数据。可以是当在先的待分配的服务数据被多个第一服务处理完毕后,获取当前的待分配的服务数据。每次获取到的待分配的服务数据不同。
在相关技术中,常见方式是采用容器技术处理待分配的服务数据。容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源。其中,每个容器在所归属的服务器中专用预分配的资源。每个容器对应一个实例。容器之间按照配额共享服务器的硬件资源。每个实例在运行时独占其对应的容器所分配到的服务器资源。这里的容器所分配到的服务器资源包括内存资源和CPU资源。另外,容器管理中心负责管理服务器资源,当容器的实际所需的服务器资源不足时,可以为该容器扩展服务器资源。例如,容器管理中心先规定容器支持的最大使用内存和容器当前的最大内存,容器当前的最大内存一般小于或者等于容器支持的最大使用内存。当容器当前的最大内存不能满足需求时,可以向容器管理中心申请扩展当前的最大内存。
基于上述容器技术,获取待分配的服务数据的步骤可以包括:获取当前待分配的服务数据的大小,
如果当前待分配的服务数据的大小大于容器支持的最大使用内存,则由分布式文件系统切分后,再读取当前待分配的服务数据到容器中;
如果当前待分配的服务数据的大小小于或者等于容器支持的最大使用内存,且当前待分配的服务数据的大小大于容器当前的最大内存,则通知容器管理中心扩展容器当前的最大内存,再读取当前待分配的服务数据到容器中;
如果当前待分配的服务数据的大小小于或者等于容器当前的最大内存,则读取当前待分配的服务数据到容器中。
在步骤S240中,根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据。
在该步骤中,根据多个服务器的状态数据和当前待分配的服务数据的数据指标,计算每个服务器处理当前待分配的服务数据的处理能力,根据计算结果,将当前待分配的服务数据切分为多个子服务数据。
可选地,每一个服务器的多个第一服务处理在先的子服务数据时产生的状态数据是一个多维数据。可以通过查询服务列表获取每个服务器的状态数据。根据多个服务器的状态数据和当前待分配的服务数据的数据指标,计算每个服务器处理当前待分配的服务数据的处理能力,根据计算结果,将当前待分配的服务数据切分为多个子服务数据,包括:
根据状态数据和当前待分配的服务数据的数据指标为每个服务器构建信息矩阵,其中,信息矩阵的每一个元素具有不同的优先级。为每个服务器的信息矩阵构建优先级矩阵。根据信息矩阵和对应的优先级矩阵,计算得到每个服务器上运行的多个第一服务处理当前待分配的服务数据的处理能力值。根据计算结果,将当前待分配的服务数据切分为多个子服务数据。
例如,根据状态数据和当前待分配的服务数据的数据指标为每个服务器构建的信息矩阵为:
Figure BDA0002077098130000131
信息矩阵的每一个元素具有不同的优先级。为每一个服务器的对应的信息矩阵构建一个优先级矩阵。
例如,
Figure BDA0002077098130000132
根据信息矩阵和对应的优先级矩阵,计算得到每个服务器上运行的多个第一服务处理当前待分配的服务数据的处理能力值,例如,Z=X×Y。容易理解的是,可以通过调整每一个服务器的对应的信息矩阵中每一个元素的优先级,来调整每一个服务器最终得到处理能力值。可选地,通过蚁群算法来不断优化信息矩阵对应的优先级矩阵,对该信息矩阵和对应的优化的优先级矩阵进行矩阵运算,得到每个服务器上运行的多个第一服务处理当前待分配的服务数据的处理能力值。
例如,不同服务器上运行的多个第一服务处理服务数据的逻辑不同,例如,当前集群中总共有8台服务器,服务器1-4上运行的多个第一服务处理服务数据的计算结果需要提供给服务器5-8。服务器1-4和服务器5-8在数据层面存在依赖关系,因此,在将待分配的服务数据切分为多个子服务数据,并将多个子服务数据分配给多个服务器的时候可以通过预设的每个服务器的信息矩阵中数据依赖深度的优先级来实时调整待分配的服务数据的切分策略。
可选地,如果对多个服务器上运行的多个第一服务处理服务数据的执行时间有要求,则在根据状态数据和当前待分配的服务数据的数据指标为每个服务器构建信息矩阵时需要将执行时间作为信息矩阵的元素。
计算得到每一个服务器的处理能力值后,对计算结果进行排序,并且根据计算结果将当前待分配的服务数据切分为多个子服务数据。例如,处理能力值较大的服务器分配较大的子服务数据,处理能力值较小的服务器分配较小的子服务数据。
在步骤S250中,将所述多个子服务数据分别分配给所述多个服务器,每个所述服务器分别运行多个第一服务,所述多个第一服务接收并处理所述多个子服务数据。
该步骤与图1中的步骤S140一致,这里就不再赘述。
根据本公开的实施例,当首次获取待分配的服务数据时,根据待分配的服务数据自身的大小、多个服务器的性能和多个第一服务处理待分配的服务数据时的内存膨胀数据,将待分配的服务数据切分为多个子服务数据,使得多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值;然后重复执行以下步骤:收集来自多个服务器的状态数据;获取当前待分配的服务数据,根据多个服务器的状态数据和当前待分配的服务数据的数据指标,计算每个服务器处理当前待分配的服务数据的处理能力,根据计算结果,将当前待分配的服务数据切分为多个子服务数据。将多个子服务数据分别分配给多个服务器,每个服务器分别运行多个第一服务,多个第一服务接收并处多个子服务数据。
在本实施例中,由于状态数据能够反映多个第一服务在处理在先的子服务数据时的内存膨胀情况,因此,根据状态数据和当前待分配的服务数据的数据指标,确定当前服务数据的切分策略,能够避免了各个服务器的多个第一服务处理服务数据时出现内存不足,虚拟机频繁重新回收内存的问题,从而提高了服务数据的处理效率。通过将服务数据合理分配到多个服务器上,从而提高了整体的内存资源利用率。
另外,首次将待分配的服务数据切分为多个子服务数据时,兼顾服务数据会产生的内存膨胀,也能够避免了各个服务器的多个第一服务首次处理服务数据时出现内存不足,虚拟机频繁重新回收内存的问题。
图3是根据一示例性实施例示出的数据处理装置框图。包括:收集单元310、获取单元320、切分单元330和分配单元340。
收集单元310,被配置为执行收集来自多个服务器的状态数据。
获取单元320,被配置为执行获取当前待分配的服务数据。
切分单元330,被配置为执行根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据。
分配单元340,被配置为执行将所述多个子服务数据分别分配给所述多个服务器,每个所述服务器分别运行多个第一服务,所述多个第一服务接收并处理所述多个子服务数据。
在本公开的实施例中,该数据处理装置收集来自多个服务器的状态数据,获取当前待分配的服务数据,根据多个服务器的状态数据和当前待分配的服务数据的数据指标,计算每个服务器处理当前待分配的服务数据的处理能力,根据计算结果,将当前待分配的服务数据切分为多个子服务数据,从而能够根据多个服务器的状态数据和当前待分配的服务数据的数据指标控制每个子服务数据的大小,避免了各个服务器的多个第一服务接收并处理子服务数据时出现内存不足,导致虚拟机频繁重新回收内存的问题,进而提高了子服务数据的处理效率。当能够合理利用多个服务器的内存时,服务数据的整体处理效率也得以提高。
在本公开的一个可选的实施例中,所述分配单元340,还被配置为执行当首次获取所述待分配的服务数据时,根据所述待分配的服务数据自身的大小、所述多个服务器的性能和所述多个第一服务处理所述待分配的服务数据时的内存膨胀数据,将所述待分配的服务数据切分为多个子服务数据,使得所述多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值。
在本公开的一个可选的实施例中,所述获取当前待分配的服务数据包括:将所述当前待分配的服务数据读取到容器中;则所述获取单元320,还被配置为执行在将所述当前待分配的服务数据读取到容器中之前,获取所述当前待分配的服务数据的大小;
如果所述当前待分配的服务数据的大小大于所述容器支持的最大使用内存,则由分布式文件系统切分后,再读取所述当前待分配的服务数据到所述容器中;
如果所述当前待分配的服务数据的大小小于或者等于所述容器支持的最大使用内存,且所述当前待分配的服务数据的大小大于所述容器当前的最大内存,则通知所述容器管理中心扩展所述容器的最大内存,再读取所述当前待分配的服务数据到所述容器中;以及
如果所述当前待分配的服务数据的大小小于或者等于所述容器当前的最大内存,则读取所述当前待分配的服务数据到所述容器中。
图4是根据一示例性实施例示出的一种用于上述数据处理方法的数据处理装置400的框图。例如,数据处理装置400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图4,装置400可以包括以下一个或多个组件:处理组件410,存储器420,电源组件430,多媒体组件440,音频组件450,输入/输出(I/O)的接口460,传感器组件470,以及通信组件480。
处理组件410通常控制装置400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件410可以包括一个或多个处理器490来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件410可以包括一个或多个模块,便于处理组件410和其他组件之间的交互。例如,处理组件410可以包括多媒体模块,以方便多媒体组件440和处理组件410之间的交互。
存储器420被配置为存储各种类型的数据以支持在设备400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器420可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件430为装置400的各种组件提供电力。电源组件430可以包括电源管理系统,一个或多个电源,及其他与为装置400生成、管理和分配电力相关联的组件。
多媒体组件440包括在所述装置400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件440包括一个前置摄像头和/或后置摄像头。当设备400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件450被配置为输出和/或输入音频信号。例如,音频组件450包括一个麦克风(MIC),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器420或经由通信组件480发送。在一些实施例中,音频组件450还包括一个扬声器,用于输出音频信号。
I/O接口460为处理组件410和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启用按钮和锁定按钮。
传感器组件470包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件470可以检测到设备400的打开/关闭状态,组件的相对定位,例如所述组件为装置400的显示器和小键盘,传感器组件470还可以检测装置400或装置400一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化。传感器组件470可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件470还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件470还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件480被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件480经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件480还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置400可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器420,上述指令可由装置400的处理器490执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,包括计算机程序产品,所述计算机程序包括程序指令,当所述程序指令被移动终端执行时,使所述移动终端执行上述数据处理方法的步骤:收集来自多个服务器的状态数据;获取当前待分配的服务数据;根据所述多个服务器的状态数据和所述当前待分配的服务数据的数据指标,计算每个所述服务器处理所述当前待分配的服务数据的处理能力,根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据;以及将所述多个子服务数据分别分配给所述多个服务器,每个所述服务器分别运行多个第一服务,所述多个第一服务接收并处理所述多个子服务数据。。
图5是根据一示例性实施例示出的一种用于上述数据处理方法的数据处理装置500的框图。例如,装置500可以被提供为一服务器。参照图5,装置500包括处理组件510,其进一步包括一个或多个处理器,以及由存储器520所代表的存储器资源,用于存储可由处理组件510的执行的指令,例如应用程序。存储器520中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件510被配置为执行指令,以执行上述数据处理方法。
装置500还可以包括一个电源组件530被配置为执行装置500的电源管理,一个有线或无线网络接口540被配置为将装置500连接到网络,和一个输入输出(I/O)接口550。装置500可以操作基于存储在存储器520的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (16)

1.一种数据处理方法,其特征在于,包括:
收集来自多个服务器的状态数据;
获取当前待分配的服务数据;
根据所述状态数据和所述当前待分配的服务数据的数据指标为所述服务器构建信息矩阵;
为所述服务器的所述信息矩阵构建优先级矩阵;
根据所述信息矩阵和对应的所述优先级矩阵,计算得到所述服务器上运行的多个第一服务处理所述当前待分配的服务数据的处理能力值;
根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据;以及
将所述多个子服务数据分别分配给所述多个服务器,所述多个第一服务接收并处理所述多个子服务数据。
2.根据权利要求1所述的数据处理方法,其特征在于,所述状态数据是所述多个服务器处理在先的服务数据时产生的多维数据。
3.根据权利要求2所述的数据处理方法,其特征在于,所述根据所述信息矩阵和对应的所述优先级矩阵,计算得到所述服务器上运行的多个第一服务处理所述当前待分配的服务数据的处理能力值,包括:
通过蚁群算法优化所述信息矩阵对应的所述优先级矩阵;
对所述信息矩阵和对应的所述优先级矩阵进行矩阵运算,得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值。
4.根据权利要求1所述的数据处理方法,其特征在于,所述的数据处理方法,还包括:
当首次获取所述待分配的服务数据时,根据所述待分配的服务数据自身的大小、所述多个服务器的性能和所述多个第一服务处理所述待分配的服务数据时的内存膨胀数据,将所述待分配的服务数据切分为多个子服务数据,使得所述多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值。
5.根据权利要求1所述的数据处理方法,其特征在于,所述获取当前待分配的服务数据包括:将所述当前待分配的服务数据读取到容器中;则所述数据处理方法还包括:
在将所述当前待分配的服务数据读取到容器中之前,获取所述当前待分配的服务数据的大小;
如果所述当前待分配的服务数据的大小大于所述容器支持的最大使用内存,则由分布式文件系统切分后,再读取所述当前待分配的服务数据到所述容器中;
如果所述当前待分配的服务数据的大小小于或者等于所述容器支持的最大使用内存,且所述当前待分配的服务数据的大小大于所述容器当前的最大内存,则通知容器管理中心扩展所述容器的最大内存,再读取所述当前待分配的服务数据到所述容器中;以及
如果所述当前待分配的服务数据的大小小于或者等于所述容器当前的最大内存,则读取所述当前待分配的服务数据到所述容器中。
6.根据权利要求3所述的数据处理方法,其特征在于,所述多个服务器的所述状态数据记录在服务列表中,所述状态数据包括:CPU使用数据、内存使用数据和网络使用数据,所述服务数据的数据指标,包括:数据类型、数据依赖深度和数据量。
7.根据权利要求5所述的数据处理方法,其特征在于,当在先的待分配的服务数据被所述多个第一服务处理完毕后,获取所述当前待分配的服务数据。
8.一种数据处理装置,其特征在于,包括:
收集单元,被配置为执行收集来自多个服务器的状态数据;
获取单元,被配置为执行获取当前待分配的服务数据;
切分单元,被配置为执行根据所述状态数据和所述当前待分配的服务数据的数据指标为所述服务器构建信息矩阵;为所述服务器的所述信息矩阵构建优先级矩阵;根据所述信息矩阵和对应的所述优先级矩阵,计算得到所述服务器上运行的多个第一服务处理所述当前待分配的服务数据的处理能力值;根据计算结果,将所述当前待分配的服务数据切分为多个子服务数据;以及
分配单元,被配置为执行将所述多个子服务数据分别分配给所述多个服务器,所述多个第一服务接收并处理所述多个子服务数据。
9.根据权利要求8所述的数据处理装置,其特征在于,所述状态数据是所述多个服务器处理在先的服务数据时产生的多维数据。
10.根据权利要求9所述的数据处理装置,其特征在于,所述根据所述信息矩阵和对应的所述优先级矩阵,计算得到所述服务器上运行的多个第一服务处理所述当前待分配的服务数据的处理能力值,包括:
通过蚁群算法优化所述信息矩阵对应的所述优先级矩阵;
对所述信息矩阵和对应的所述优先级矩阵进行矩阵运算,得到每个所述服务器上运行的所述多个第一服务处理所述当前待分配的服务数据的处理能力值。
11.根据权利要求8所述的数据处理装置,其特征在于,所述分配单元,还被配置为执行当首次获取所述待分配的服务数据时,根据所述待分配的服务数据自身的大小、所述多个服务器的性能和所述多个第一服务处理所述待分配的服务数据时的内存膨胀数据,将所述待分配的服务数据切分为多个子服务数据,使得所述多个第一服务在JAVA虚拟机中的占用内存小于等于预设内存值。
12.根据权利要求8所述的数据处理装置,其特征在于,所述获取当前待分配的服务数据包括:将所述当前待分配的服务数据读取到容器中;则所述获取单元,还被配置为执行在将所述当前待分配的服务数据读取到容器中之前,获取所述当前待分配的服务数据的大小;
如果所述当前待分配的服务数据的大小大于所述容器支持的最大使用内存,则由分布式文件系统切分后,再读取所述当前待分配的服务数据到所述容器中;
如果所述当前待分配的服务数据的大小小于或者等于所述容器支持的最大使用内存,且所述当前待分配的服务数据的大小大于所述容器当前的最大内存,则通知容器管理中心扩展所述容器的最大内存,再读取所述当前待分配的服务数据到所述容器中;以及
如果所述当前待分配的服务数据的大小小于或者等于所述容器当前的最大内存,则读取所述当前待分配的服务数据到所述容器中。
13.根据权利要求10所述的数据处理装置,其特征在于,所述多个服务器的所述状态数据记录在服务列表中,所述状态数据包括:CPU使用数据、内存使用数据和网络使用数据,所述服务数据的数据指标,包括:数据类型、数据依赖深度和数据量。
14.根据权利要求12所述的数据处理装置,其特征在于,当在先的待分配的服务数据被所述多个第一服务处理完毕后,获取所述当前待分配的服务数据。
15.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的数据处理方法。
16.一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至7中任一项所述的数据处理方法。
CN201910457682.1A 2019-05-29 2019-05-29 数据处理方法、装置、电子设备及存储介质 Active CN110287000B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910457682.1A CN110287000B (zh) 2019-05-29 2019-05-29 数据处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910457682.1A CN110287000B (zh) 2019-05-29 2019-05-29 数据处理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN110287000A CN110287000A (zh) 2019-09-27
CN110287000B true CN110287000B (zh) 2021-08-17

Family

ID=68002965

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910457682.1A Active CN110287000B (zh) 2019-05-29 2019-05-29 数据处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN110287000B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858064A (zh) * 2020-07-29 2020-10-30 山东有人信息技术有限公司 一种动态内存分配方法及系统
CN114168354B (zh) * 2022-02-11 2022-05-03 北京易源兴华软件有限公司 基于数据驱动的数据集群并行计算的调配方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104991830A (zh) * 2015-07-10 2015-10-21 山东大学 基于服务等级协议的yarn资源分配和节能调度方法及系统
CN106708622A (zh) * 2016-07-18 2017-05-24 腾讯科技(深圳)有限公司 集群资源处理方法和系统、资源处理集群
CN109800204A (zh) * 2018-12-27 2019-05-24 深圳云天励飞技术有限公司 数据分配方法及相关产品

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10572306B2 (en) * 2016-09-14 2020-02-25 Cloudera, Inc. Utilization-aware resource scheduling in a distributed computing cluster
US20190026295A1 (en) * 2017-07-19 2019-01-24 Nutanix, Inc. System and method for obtaining application insights through search

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104991830A (zh) * 2015-07-10 2015-10-21 山东大学 基于服务等级协议的yarn资源分配和节能调度方法及系统
CN106708622A (zh) * 2016-07-18 2017-05-24 腾讯科技(深圳)有限公司 集群资源处理方法和系统、资源处理集群
CN109800204A (zh) * 2018-12-27 2019-05-24 深圳云天励飞技术有限公司 数据分配方法及相关产品

Also Published As

Publication number Publication date
CN110287000A (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
CN111061484B (zh) 代码编译方法、装置、服务器、用户终端及可读介质
US11099900B2 (en) Memory reclamation method and apparatus
CN106775893B (zh) 对程序预编译的方法及装置
CN109960507B (zh) 编译优化方法、装置、存储介质、智能终端及服务器
CN111966492B (zh) 内存回收方法、装置、电子设备及计算机可读存储介质
JP6870158B2 (ja) メモリを処理するための方法および装置ならびに記憶媒体
US10698837B2 (en) Memory processing method and device and storage medium
WO2019137252A1 (zh) 内存处理方法、电子设备、计算机可读存储介质
CN110287000B (zh) 数据处理方法、装置、电子设备及存储介质
WO2019137258A1 (zh) 内存处理方法、电子设备及计算机可读存储介质
CN111258921A (zh) 垃圾内存回收方法及装置、电子设备、存储介质
CN115145735B (zh) 一种内存分配方法、装置和可读存储介质
CN113220482A (zh) 调用请求处理方法、装置、电子设备及存储介质
WO2019128542A1 (zh) 应用处理方法、电子设备、计算机可读存储介质
CN115016866A (zh) 应用启动时的数据处理方法、电子设备及存储介质
CN109634762B (zh) 一种数据回收方法、装置、电子设备及存储介质
CN111580980B (zh) 内存管理方法和装置
CN116089096B (zh) 负载资源调度方法及电子设备
CN111090627B (zh) 基于池化的日志存储方法、装置、计算机设备及存储介质
CN115016855A (zh) 应用预加载的方法、设备和存储介质
CN113722080A (zh) 内存优化方法、装置及计算机存储介质
CN113032290A (zh) 闪存配置方法、装置、电子设备和存储介质
CN117573397B (zh) 内存优化方法、系统和存储介质
CN116089320B (zh) 垃圾回收方法和相关装置
CN113032153B (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