CN111338779A - 资源分配方法、装置、计算机设备和存储介质 - Google Patents

资源分配方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111338779A
CN111338779A CN202010124889.XA CN202010124889A CN111338779A CN 111338779 A CN111338779 A CN 111338779A CN 202010124889 A CN202010124889 A CN 202010124889A CN 111338779 A CN111338779 A CN 111338779A
Authority
CN
China
Prior art keywords
resource
business
resources
program
service
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010124889.XA
Other languages
English (en)
Other versions
CN111338779B (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.)
Shenzhen Huarui Distributed Technology Co.,Ltd.
Original Assignee
Shenzhen Archforce Financial 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 Shenzhen Archforce Financial Technology Co Ltd filed Critical Shenzhen Archforce Financial Technology Co Ltd
Priority to CN202010124889.XA priority Critical patent/CN111338779B/zh
Publication of CN111338779A publication Critical patent/CN111338779A/zh
Application granted granted Critical
Publication of CN111338779B publication Critical patent/CN111338779B/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/5027Allocation 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请涉及一种资源分配方法、装置、计算机设备和存储介质。所述方法包括:获取待运行的业务程序;业务程序包括至少一个业务进程;确定当前待分配的、且与业务程序对应的目标***资源;按照业务程序中各业务进程各自对应的资源需求量,对目标***资源进行分区得到与各资源需求量匹配的分区资源;将与各资源需求量匹配的分区资源,分别分配至相对应的业务进程;在产生对业务进程的执行指令时,通过调用分配至业务进程的分区资源以执行业务进程。采用本方法能够提高提高业务程序的运行效率。

Description

资源分配方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种资源分配方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了性能优化技术,性能优化技术指在不影响***正常运行的前提下,提升该***的运行效率,也就是说,性能优化技术可以使得***在单位时间内运行且完成更多的任务。传统的实现性能优化技术的方法是通过增加***可调度的资源来提升***的性能,具体可以通过使用多核CPU(Central Processing Unit,中央处理器)、增加内存、增加网络带宽、使用固态硬盘或修改内核参数等方式来实现。
然而,对于***来说,虽然传统的通过增加***可调度资源的方式,起到了一定的***性能优化作用,但***上的程序使用外接资源进行运行时,所花费的响应时间较长,使得运行各程序的时间久,从而导致效率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高运行效率的资源分配方法、装置、计算机设备和存储介质。
一种资源分配方法,所述方法包括:
获取待运行的业务程序;所述业务程序包括至少一个业务进程;
确定当前待分配的、且与所述业务程序对应的目标***资源;
按照所述业务程序中各所述业务进程各自对应的资源需求量,对所述目标***资源进行分区得到与各所述资源需求量匹配的分区资源;
将与各所述资源需求量匹配的分区资源,分别分配至相对应的业务进程;
在产生对所述业务进程的执行指令时,通过调用分配至所述业务进程的分区资源以执行所述业务进程。
一种资源分配装置,所述装置包括:
获取模块,用于获取待运行的业务程序;所述业务程序包括至少一个业务进程;
确定模块,用于确定当前待分配的、且与所述业务程序对应的目标***资源;
分区模块,用于按照所述业务程序中各所述业务进程各自对应的资源需求量,对所述目标***资源进行分区得到与各所述资源需求量匹配的分区资源;
分配模块,用于将与各所述资源需求量匹配的分区资源,分别分配至相对应的业务进程;
执行模块,用于在产生对所述业务进程的执行指令时,通过调用分配至所述业务进程的分区资源以执行所述业务进程。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述资源分配的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述资源分配的步骤。
上述资源分配方法中,通过按照业务程序中各业务进程所需的资源需求量,对各业务程序所对应的目标***资源进行资源分区,并分配与各业务进程资源需求量匹配的分区资源,最后通过调用各业务进程的分区资源来执行对应的业务进程。从单个进程的角度来看,每个业务进程都有独占的资源,可以避免业务进程在处理时被抢占资源而导致中断的问题,且减少该业务进程在不同资源之间传递和切换的时间,有效地缩短整个串行任务处理的时间,从而提升操作***的处理效率。从多业务进程的角度来看,可以避免不同业务进程之间的资源争抢。特别是在高业务压力情况下,可以保证缩短每个不同业务进程处理的时间,从而大大提高操作***上运行业务程序的效率。同时,通过在固有资源中进行资源分区来实现***的性能优化,花费的资源成本几乎为零,从而有效地节约了资源成本。
附图说明
图1为一个实施例中资源分配方法的应用环境图;
图2为一个实施例中资源分配方法的流程示意图;
图3为一个实施例中将与各资源需求量匹配的分区资源,分别分配至相对应的业务进程的步骤的流程示意图;
图4为另一个实施例中资源分配方法的流程示意图;
图5为一个实施例中资源分配装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的资源分配方法,可以应用于如图1所示的应用环境中。其中,终端110通过网络与服务器120进行通信。其中,终端110可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端110和服务器120可单独用于执行本申请实施例所提及的资源分配方法。终端110和服务器120也可协同用于执行本申请实施例所提及的资源分配方法。
可以理解,图1中的终端和服务器均可称作计算机设备,该计算机设备中运行有操作***,且在操作***中运行有业务程序。当然该计算机设备还包括用于支持操作***和业务程序运行的硬件结构,比如硬件服务器。计算机设备在运行业务程序时,可将业务程序中的与业务进程有关的内容转换成0和1的电信号形式,并通过电信号在硬件结构上进行运算、处理和传递。
在一个实施例中,如图2所示,提供了一种资源分配方法,以该方法应用于计算机设备为例进行说明,该计算机设备具体可以是图1中的终端110或服务器120,该资源分配方法包括以下步骤:
S202,获取待运行的业务程序;业务程序包括至少一个业务进程。
其中,业务程序是在计算机设备的操作***上运行的计算机程序。计算机程序是指示计算机设备执行特定动作的有序指令,通过编程语言编写代码,并将代码转换成计算机设备可识别的指令来实现相应的程序功能。业务程序是计算机程序中的一种应用程序,用于解决用户特定的问题,具体可以是文本翻译程序、财务管理程序或网络数据监测程序等,根据具体所处理的业务而定,本申请实施例对此不做限定。
业务进程是业务程序在操作***上的动态执行过程。每个业务程序可包括至少一个业务进程,也就是每个业务程序包括至少一次动态执行过程。其中,进程是计算机设备上***资源竞争的基本单位,一个业务程序可以对应多个业务进程,但每个业务进程只能对应一个业务程序。
具体地,计算机设备可从本地或其他计算机设备的操作***上获取待运行的业务程序。在一个实施例中,终端上运行业务程序,计算机设备可通过向终端发送指令来获取业务程序的地址信息,计算机设备通过接收到的地址信息调用终端上相应的业务程序。
在一个实施例中,计算机设备中运行有操作***,且在操作***中运行有业务程序,计算机设备通过运行的操作***来管理和控制该设备的***资源,并调度对应的***资源来执行操作***上运行的业务程序。其中,操作***是管理和控制计算机设备中硬件与软件资源的计算机程序。具体可以是视窗(Windows)操作***或Linux操作***或者MacOS(苹果桌面操作***)等桌面操作***,也可以是iOS(苹果移动终端操作***)或者安卓(Android)操作***等移动终端操作***。
在一个实施例中,计算机设备上运行的操作***是Linux操作***,计算机设备通过Linux操作***来管理和控制该设备的***资源,并调度对应的***资源来执行操作***上运行的业务程序。
S204,确定当前待分配的、且与业务程序对应的目标***资源。
其中,目标***资源是***资源中与业务程序相对应的资源。***资源包括软件资源和硬件资源。软件资源指用于提高计算机使用效率而开发的程序和用于计算机开发、使用和维护的有关文档,硬件资源主要指计算资源和存储资源,如CPU、硬盘或内存储器等。其中,硬件资源包括本地硬件资源或外接硬件资源。
在一个实施例中,业务程序的数量大于一,步骤S204,也就是确定当前待分配的、且与业务程序对应的目标***资源的步骤,具体包括:确定当前待分配的***资源、及各业务程序各自对应的资源需求总量;按照各业务程序各自对应的资源需求总量,对***资源进行分区得到与各资源需求总量匹配的目标***资源;将与各资源需求总量匹配的目标***资源,分别分配至相对应的业务程序。
在一个实施例中,计算机设备可通过运行的操作***将***资源以各业务程序为单位进行分区。计算机设备通过确定各业务程序各自对应的资源需求总量,并按照各资源需求总量对***资源进行分区,得到与各资源需求总量匹配的目标***资源,并分别分配至相对应的业务程序。
在一个实施例中,计算机设备可以对***资源中的硬件资源进行资源分配,硬件资源如CPU。具体地,计算机设备可通过确定各业务程序各自对应的CPU需求总量,并按照各CPU需求总量对CPU进行分区,可得到与各CPU需求总量匹配的目标CPU,并将目标CPU分别分配至相对应的业务程序。
在一个实施例中,计算机设备对***资源中的硬盘进行资源分配。具体地,计算机设备可通过确定各业务程序各自对应的硬盘需求总量,并按照各硬盘需求总量对硬盘进行分区,可得到与各硬盘需求总量匹配的目标硬盘,并将目标硬盘分别分配至相对应的业务程序。
在一个实施例中,计算机设备对***资源中的网卡进行资源分配。具体地,计算机设备可通过确定各业务程序各自对应的网卡需求总量,并按照各网卡需求总量对网卡进行分区,可得到与各网卡需求总量匹配的目标网卡,并将目标网卡分别分配至相对应的业务程序。
上述实施例中,计算机设备按照各业务程序各自对应的资源需求总量对***资源进行分区,使得各业务程序都可被分配到充足的***资源。当各业务程序在操作***上运行时,不会被其他业务程序抢占资源,确保了每个业务程序的运行效率,从而提高了整个操作***的运行效率。
在一个实施例中,步骤S204,也就是确定当前待分配的、且与业务程序对应的目标***资源的步骤,具体包括:确定当前处于空闲状态的***资源、及与业务程序无关的额外任务;将额外任务与***资源中的预设资源进行绑定;将***资源中去除预设资源后的资源,作为与业务程序对应的目标***资源。
其中,与业务程序无关的额外任务可以是中断程序,如***中断或网络中断等。***资源包括预设资源和目标***资源,预设资源是计算机设备预先设置的,用于运行与业务程序无关的额外任务的资源。
在一个实施例中,计算机设备从***资源中设置预设资源,将除去预设资源以外的***资源作为目标***资源,并与各业务程序进行绑定。当计算机设备检测到***设备产生的中断程序,如敲击键盘按键或网络连接没有响应而产生中断程序时,计算机设备可调用***资源中预设资源对该中断程序进行处理。
在一个实施例中,计算机设备可以对***资源中的硬件资源进行资源分配,硬件资源如CPU、硬盘或网卡等。具体地,计算机设备可将外接CPU作为预设资源,并与其他额外任务进行绑定,将本地CPU作为目标***资源;计算机设备可将外接硬盘作为预设资源,并与其他额外任务进行绑定,将本地硬盘作为目标***资源;计算机设备可将外接网卡作为预设资源,并与其他额外任务进行绑定,将本地网卡作为目标***资源。
上述实施例中,计算机设备通过在***资源中预留预设资源,并将***资源中去除预设资源后的资源,作为与业务程序对应的目标***资源,使得计算机设备可快速的确定当前待分配的、且与业务程序对应的目标***资源,当各业务程序在操作***上运行时,不会被额外任务抢占资源,确保了业务程序的运行效率,从而提高了整个操作***的运行效率。
S206,按照业务程序中各业务进程各自对应的资源需求量,对目标***资源进行分区得到与各资源需求量匹配的分区资源。
其中,资源需求量是业务程序中各业务进程所需的资源量。目标***资源是该业务程序所需的资源量。分区资源是目标***资源进行区域划分后的资源,也就是说,目标***资源至少包含一个分区资源。
在一个实施例中,计算机设备可调取业务程序中各业务进程的配置信息,确定各业务进程各自对应的资源需求量,并按照业务程序中各业务进程各自对应的资源需求量对目标***资源进行分区,从而得到与各资源需求量匹配的分区资源。
在一个实施例中,计算机设备可通过统计业务程序中各业务进程的数量,确定业务进程的总数量,并按照业务程序中业务进程的总数量对目标***资源进行分区,从而得到与各业务进程数量匹配的分区资源。
S208,将与各资源需求量匹配的分区资源,分别分配至相对应的业务进程。
具体地,计算机设备从目标***资源中确定与各业务进程各自对应的资源需求量相匹配的分区资源,将与各业务进程各自对应的资源需求量相匹配的分区资源,分别分配至相对应的业务进程。
在一个实施例中,计算机设备可从目标***资源中确定与各业务进程数量匹配的分区资源,将与各业务进程数量匹配的分区资源,分别分配至相对应的业务进程。
在一个实施例中,计算机设备通过Linux内核的操作***对所运行的业务程序进行管理和控制。Linux操作***是以相互抢占资源的方式对业务程序进行资源调度。具体可以是业务程序中各业务进程自发性的申请资源配置,计算机设备可按照各业务进程的优先级分配相应的***资源,优先分配与优先级级别高的业务进程相应的***资源。
在一个实施例中,当业务程序中各业务进程申请资源配置时,计算机设备可按照轮询算法分配与各业务进程相应的***资源。具体可以是由CPU定时向各业务进程发出询问指令,用于指示依序询问各业务进程的资源配置情况,并按照各业务进程的资源需求量,分配相应的***资源。
S210,在产生对业务进程的执行指令时,通过调用分配至业务进程的分区资源以执行业务进程。
其中,执行指令是指示业务进程在***上运行的指令。
具体地,计算机设备根据所产生的执行指令,在操作***上调用分配至业务进程的分区资源,分区资源是用于执行对应的业务进程。
在一个实施例中,计算机设备可以对***资源中的硬件资源进行资源分配,硬件资源如CPU。具体地,计算机设备可确定各业务进程各自对应的CPU需求量,并按照业务进程各自对应的CPU需求量对目标CPU进行分区,从而确定与各业务进程各自对应的CPU需求量相匹配的分区资源,将与各业务进程各自对应的CPU需求量相匹配的分区资源,分别分配至相对应的业务进程。计算机设备可根据接收的执行指令,调用目标CPU对各业务程序进行相应的运算处理。
在一个实施例中,计算机设备对***资源中的硬盘进行资源分配。具体地,计算机设备可确定各业务进程各自对应的硬盘需求量,并按照业务进程各自对应的硬盘需求量对目标硬盘进行分区,从而确定与各业务进程各自对应的硬盘需求量相匹配的分区资源,将与各业务进程各自对应的硬盘需求量相匹配的分区资源,分别分配至相对应的业务进程。计算机设备可根据接收的执行指令,在本地硬盘的IOPS(Input/Output Operations PerSecond,每秒读写次数)不变的情况下,调用目标硬盘对各业务程序进行相应的读写处理。
在一个实施例中,计算机设备对***资源中的网卡进行资源分配。具体地,计算机设备可确定各业务进程各自对应的网卡需求量,并按照业务进程各自对应的网卡需求量对目标网卡进行分区,从而确定与各业务进程各自对应的网卡需求量相匹配的分区资源,将与各业务进程各自对应的网卡需求量相匹配的分区资源,分别分配至相对应的业务进程。计算机设备可根据接收的执行指令,调用目标网卡对各业务程序进行相应的网络交互处理,将业务程序中各业务进程的网络数据流量分别绑定到对应的网卡上。
上述资源分配方法中,通过按照业务程序中各业务进程所需的资源需求量,对各业务程序所对应的目标***资源进行资源分区,并分配与各业务进程资源需求量匹配的分区资源,最后通过调用各业务进程的分区资源来执行对应的业务进程。从单个进程的角度来看,每个业务进程都有独占的资源,可以避免业务进程在处理时被抢占资源而导致中断的问题,且减少该业务进程在不同资源之间传递和切换的时间,有效地缩短整个串行任务处理的时间,从而提升操作***的处理效率。从多业务进程的角度来看,可以避免不同业务进程之间的资源争抢。特别是在高业务压力情况下,可以保证缩短每个不同业务进程处理的时间,从而大大提高操作***运行业务程序的效率。同时,通过在固有资源中进行资源分区来实现***的性能优化,花费的资源成本几乎为零,从而有效地节约了资源成本。
参考图3,在一个实施例中,步骤S208,也就是将与各资源需求量匹配的分区资源,分别分配至相对应的业务进程的步骤,具体包括:
S302,为各分区资源分配对应的资源标识。
其中,资源标识是区分每个分区资源的标识信息,可以是各分区资源的ID(Identity document,身份标识号),各分区资源存储在***中的地址信息等。其中,资源标识用来唯一标识该分区资源。
S304,确定与各业务进程的资源需求量相匹配的分区资源。
具体地,计算机设备确定业务程序中各业务进程各自对应的资源需求量,按照业务程序中各业务进程各自对应的资源需求量,对目标***资源进行分区得到与各资源需求量匹配的分区资源。
在一个实施例中,计算机设备确定业务程序中各业务进程的数量,按照业务程序中各业务进程的数量,对目标***资源进行分区,得到与各业务进程数量匹配的分区资源。
S306,将业务进程的进程标识与相匹配的分区资源的资源标识进行关联处理,以为各业务进程分配相应的分区资源。
具体地,计算机设备确定各业务进程的进程标识,将业务进程的进程标识与相匹配的分区资源的资源标识进行关联处理,分配与各业务进程相应的分区资源,以使得计算机设备可通过调用与各业务进程相匹配的分区资源,来执行各业务进程。
上述实施例中,计算机设备通过将业务进程的进程标识与相匹配的分区资源的资源标识进行关联处理,并分配与各业务进程相应的分区资源,可将各分区资源与对应的业务进程进行绑定,从而使得各业务进程调用各自相应的分区资源来运行。这样可避免各业务进程在运行过程中争抢资源,特别是在高业务压力情况下,可以保证缩短每个不同业务进程处理的时间,从而大大提高了整个操作***的效率。
在一个实施例中,该资源分配方法由计算机设备执行,计算机设备中设有CPU插槽,CPU插槽通过内存控制器与对应的至少一个内存插槽电连接,CPU插槽中***的CPU用于对与CPU插槽电连接的内存插槽中***的内存储器进行调度。
在一个实施例中,计算机设备通过内置的CPU插槽与外接CPU相互连接,并对与外接CPU插槽电连接的外接内存插槽中***的外接内存储器进行调度,将外接内存储器的资源分配至本地CPU控制的业务进程。
在一个实施例中,计算机设备通过内置的CPU插槽与外接CPU相互连接,并对与外接CPU插槽电连接的外接硬盘插槽中***的外接硬盘进行调度,将外接硬盘的资源分配至本地CPU控制的业务进程。
在一个实施例中,计算机设备通过内置的CPU插槽与外接CPU相互连接,并对与外接CPU插槽电连接的外接网卡插槽中***的外接网卡进行调度,将外接网卡的资源分配至本地CPU控制的业务进程。
上述实施例中,计算机设备通过CPU插槽与外接CPU相连,并对与外接CPU插槽电连接的外接资源进行调度。可减少计算机设备中的业务进程调度所需资源的响应时间,从而有效地提高操作***的效率。
在一个实施例中,目标***资源包括内存储器;内存插槽包括本地内存插槽和外接内存插槽;步骤S206,也就是按照业务程序中各业务进程各自对应的资源需求量,对目标***资源进行分区得到与各资源需求量匹配的分区资源的步骤具体包括以下步骤:按照业务程序中各业务进程各自对应的资源需求量,优先将本地内存插槽中***的本地内存储器进行分区得到与相应的分区资源;当本地内存储器中的存储容量被分区完成时,按照未被分配的业务进程所对应的资源需求量,对外接内存插槽中***的外接内存储器进行分区得到与相应的分区资源。
在一个实施例中,计算机设备可对***资源中的硬件资源进行资源分配,硬件资源如CPU。计算机设备按照业务程序中各业务进程各自对应的CPU需求量,优先将本地CPU插槽中***的本地CPU进行分区得到与相应的分区资源。当本地CPU被分区完成时,按照未被分配的业务进程所对应的CPU需求量,对外接CPU插槽中***的外接CPU进行分区得到与相应的分区资源。
在一个实施例中,计算机设备的外接存储器可以是外接硬盘。计算机设备按照业务程序中各业务进程各自对应的存储资源需求量,优先将本地内存插槽中***的本地内存进行分区得到与相应的分区资源。当本地内存中的存储容量被分区完成时,按照未被分配的业务进程所对应的存储资源需求量,对外接硬盘插槽中***的外接硬盘进行分区得到与相应的分区资源。
在一个实施例中,计算机设备确定业务程序中各业务进程在运行过程中各自产生的网络数据流量。计算机设备按照业务程序中各业务进程在运行过程中各自产生的网络数据流量,优先将本地网卡插槽中***的本地网卡进行分区得到与相应的分区流量。当本地网卡中的流量被分区完成时,按照未被分配的业务进程所产生的网络数据流量,对外接网卡插槽中***的外接网卡进行分区得到与相应的分区流量。其中,网卡插槽可以是PCIE(peripheral component interconnect express,总线和接口标准)网卡插槽。
上述实施例中,计算机设备优先将本地内存插槽中***的本地内存储器进行分区得到与相应的分区资源,当本地内存储器中的存储容量被分区完成时,对外接内存插槽中***的外接内存储器进行分区得到与相应的分区资源。通过这样资源扩充进行分区的方式,大大缩短了业务进程执行时产生的电信号在计算机设备的硬件服务器中的传递距离,减少了完成业务进程所耗的时间,从而有效地提高了操作***的效率。
参考图4,在一个具体的实施例中,资源分配方法包括以下步骤:
S402,获取待运行的业务程序;业务程序包括至少一个业务进程。
S404,确定当前待分配的***资源、及各业务程序各自对应的资源需求总量。
S406,按照各业务程序各自对应的资源需求总量,对***资源进行分区得到与各资源需求总量匹配的目标***资源。
S408,将与各资源需求总量匹配的目标***资源,分别分配至相对应的业务程序。
S410,按照业务程序中各业务进程各自对应的资源需求量,对目标***资源进行分区得到与各资源需求量匹配的分区资源。
S412,将与各资源需求量匹配的分区资源,分别分配至相对应的业务进程。
S414,在产生对业务进程的执行指令时,通过调用分配至业务进程的分区资源以执行业务进程。
上述业务进程处理方法,通过按照业务程序中各业务进程所需的资源需求量,对各业务程序所对应的目标***资源进行资源分区,并分配与各业务进程资源需求量匹配的分区资源,最后通过调用各业务进程的分区资源来执行对应的业务进程。从单个进程的角度来看,每个业务进程都有独占的资源,可以避免业务进程在处理时被抢占资源而导致中断的问题,且减少该业务进程在不同资源之间传递和切换的时间,有效地缩短整个串行任务处理的时间,从而提升操作***的处理效率。从多业务进程的角度来看,可以避免不同业务进程之间的资源争抢。特别是在高业务压力情况下,可以保证缩短每个不同业务进程处理的时间,从而大大提高操作***运行业务程序的效率。同时,通过在固有资源中进行资源分区来实现***的性能优化,花费的资源成本几乎为零,从而有效地节约了资源成本。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种资源分配装置,包括:获取模块501、确定模块502、分区模块503、分配模块504和执行模块505,其中:
获取模块501,用于获取待运行的业务程序;业务程序包括至少一个业务进程。
确定模块502,用于确定当前待分配的、且与业务程序对应的目标***资源。
分区模块503,用于按照业务程序中各业务进程各自对应的资源需求量,对目标***资源进行分区得到与各资源需求量匹配的分区资源。
分配模块504,用于将与各资源需求量匹配的分区资源,分别分配至相对应的业务进程。
执行模块505,用于在产生对业务进程的执行指令时,通过调用分配至业务进程的分区资源以执行业务进程。
在一个实施例中,确定模块502还用于确定当前待分配的***资源、及各业务程序各自对应的资源需求总量;按照各业务程序各自对应的资源需求总量,对***资源进行分区得到与各资源需求总量匹配的目标***资源;将与各资源需求总量匹配的目标***资源,分别分配至相对应的业务程序。
在一个实施例中,确定模块502还用于确定当前处于空闲状态的***资源、及与业务程序无关的额外任务;将额外任务与***资源中的预设资源进行绑定;将***资源中去除预设资源后的资源,作为与业务程序对应的目标***资源。
在一个实施例中,分配模块504还用于为各分区资源分配对应的资源标识;确定与各业务进程的资源需求量相匹配的分区资源;将业务进程的进程标识与相匹配的分区资源的资源标识进行关联处理,以为各业务进程分配相应的分区资源。
在一个实施例中,该资源分配装置500部署在计算机设备上,计算机设备中设有CPU插槽,CPU插槽通过内存控制器与对应的至少一个内存插槽电连接,CPU插槽中***的CPU用于对与CPU插槽电连接的内存插槽中***的内存储器进行调度。
在一个实施例中,目标***资源包括内存储器;内存插槽包括本地内存插槽和外接内存插槽;分区模块503还用于按照业务程序中各业务进程各自对应的资源需求量,优先将本地内存插槽中***的本地内存储器进行分区得到与相应的分区资源;当本地内存储器中的存储容量被分区完成时,按照未被分配的业务进程所对应的资源需求量,对外接内存插槽中***的外接内存储器进行分区得到与相应的分区资源。
上述资源分配装置中,通过按照业务程序中各业务进程所需的资源需求量,对各业务程序所对应的目标***资源进行资源分区,并分配与各业务进程资源需求量匹配的分区资源,最后通过调用各业务进程的分区资源来执行对应的业务进程。从单个进程的角度来看,每个业务进程都有独占的资源,可以避免业务进程在处理时被抢占资源而导致中断的问题,且减少该业务进程在不同资源之间传递和切换的时间,有效地缩短整个串行任务处理的时间,从而提升操作***的处理效率。从多业务进程的角度来看,可以避免不同业务进程之间的资源争抢。特别是在高业务压力情况下,可以保证缩短每个不同业务进程处理的时间,从而大大提高操作***运行操作程序的效率。同时,通过在固有资源中进行资源分区来实现***的性能优化,花费的资源成本几乎为零,从而有效地节约了资源成本。
关于资源分配装置的具体限定可以参见上文中对于资源分配方法的限定,在此不再赘述。上述资源分配装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备具体可以是终端或服务器,其内部结构图可以如图6所示。该计算机设备包括通过***总线连接的处理器、存储器和通信接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI(Wireless Fidelity,无线局域网)、运营商网络、NFC(Near Field Communication,近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种资源分配方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述资源分配方法的步骤。此处资源分配方法的步骤可以是上述各个实施例的资源分配方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述资源分配方法的步骤。此处资源分配方法的步骤可以是上述各个实施例的资源分配方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种资源分配方法,所述方法包括:
获取待运行的业务程序;所述业务程序包括至少一个业务进程;
确定当前待分配的、且与所述业务程序对应的目标***资源;
按照所述业务程序中各所述业务进程各自对应的资源需求量,对所述目标***资源进行分区得到与各所述资源需求量匹配的分区资源;
将与各所述资源需求量匹配的分区资源,分别分配至相对应的业务进程;
在产生对所述业务进程的执行指令时,通过调用分配至所述业务进程的分区资源以执行所述业务进程。
2.根据权利要求1所述的方法,其特征在于,所述业务程序的数量大于一;所述确定当前待分配的、且与所述业务程序对应的目标***资源包括:
确定当前待分配的***资源、及各所述业务程序各自对应的资源需求总量;
按照各所述业务程序各自对应的资源需求总量,对所述***资源进行分区得到与各所述资源需求总量匹配的目标***资源;
将与各所述资源需求总量匹配的目标***资源,分别分配至相对应的业务程序。
3.根据权利要求1所述的方法,其特征在于,所述确定当前待分配的、且与所述业务程序对应的目标***资源,还包括:
确定当前处于空闲状态的***资源、及与所述业务程序无关的额外任务;
将所述额外任务与所述***资源中的预设资源进行绑定;
将所述***资源中去除所述预设资源后的资源,作为与所述业务程序对应的目标***资源。
4.根据权利要求1所述的方法,其特征在于,所述将与各所述资源需求量匹配的分区资源,分别分配至相对应的业务进程,包括:
为各所述分区资源分配对应的资源标识;
确定与各所述业务进程的资源需求量相匹配的分区资源;
将所述业务进程的进程标识与相匹配的分区资源的资源标识进行关联处理,以为各所述业务进程分配相应的分区资源。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法由计算机设备执行,所述计算机设备中设有CPU插槽,所述CPU插槽通过内存控制器与对应的至少一个内存插槽电连接,所述CPU插槽中***的CPU用于对与所述CPU插槽电连接的内存插槽中***的内存储器进行调度。
6.根据权利要求5所述的方法,其特征在于,所述目标***资源包括内存储器;所述内存插槽包括本地内存插槽和外接内存插槽;所述按照所述业务程序中各所述业务进程各自对应的资源需求量,对所述目标***资源进行分区得到与各所述资源需求量匹配的分区资源,包括:
按照所述业务程序中各所述业务进程各自对应的资源需求量,优先将本地内存插槽中***的本地内存储器进行分区得到与相应的分区资源;
当所述本地内存储器中的存储容量被分区完成时,按照未被分配的业务进程所对应的资源需求量,对所述外接内存插槽中***的外接内存储器进行分区得到与相应的分区资源。
7.一种资源分配装置,其特征在于,所述装置包括:
获取模块,用于获取待运行的业务程序;所述业务程序包括至少一个业务进程;
确定模块,用于确定当前待分配的、且与所述业务程序对应的目标***资源;
分区模块,用于按照所述业务程序中各所述业务进程各自对应的资源需求量,对所述目标***资源进行分区得到与各所述资源需求量匹配的分区资源;
分配模块,用于将与各所述资源需求量匹配的分区资源,分别分配至相对应的业务进程;
执行模块,用于在产生对所述业务进程的执行指令时,通过调用分配至所述业务进程的分区资源以执行所述业务进程。
8.根据权利要求7所述的装置,其特征在于,所述业务程序的数量大于一;所述确定模块,还用于确定当前待分配的***资源、及各所述业务程序各自对应的资源需求总量;按照各所述业务程序各自对应的资源需求总量,对所述***资源进行分区得到与各所述资源需求总量匹配的目标***资源;将与各所述资源需求总量匹配的目标***资源,分别分配至相对应的业务程序。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202010124889.XA 2020-02-27 2020-02-27 资源分配方法、装置、计算机设备和存储介质 Active CN111338779B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010124889.XA CN111338779B (zh) 2020-02-27 2020-02-27 资源分配方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010124889.XA CN111338779B (zh) 2020-02-27 2020-02-27 资源分配方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN111338779A true CN111338779A (zh) 2020-06-26
CN111338779B CN111338779B (zh) 2021-11-02

Family

ID=71185667

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010124889.XA Active CN111338779B (zh) 2020-02-27 2020-02-27 资源分配方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN111338779B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112308457A (zh) * 2020-11-23 2021-02-02 Oppo(重庆)智能科技有限公司 一种资源分配方法、装置及计算机可读存储介质
CN112506652A (zh) * 2020-12-01 2021-03-16 中国科学院深圳先进技术研究院 一种动态资源分区方法
CN113204384A (zh) * 2021-05-14 2021-08-03 山东英信计算机技术有限公司 设备启动方法、装置及计算机可读存储介质
CN115225565A (zh) * 2022-07-25 2022-10-21 科东(广州)软件科技有限公司 数据包收发配置、收取、发送方法及装置、电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101043213A (zh) * 2007-03-15 2007-09-26 复旦大学 一种现场可编程逻辑阵列布线资源结构及其建模方法
CN108845884A (zh) * 2018-06-15 2018-11-20 中国平安人寿保险股份有限公司 物理资源分配方法、装置、计算机设备和存储介质
CN109766182A (zh) * 2018-12-18 2019-05-17 平安科技(深圳)有限公司 ***资源动态扩缩容方法、装置、计算机设备及存储介质
CN110427246A (zh) * 2019-06-29 2019-11-08 西南电子技术研究所(中国电子科技集团公司第十研究所) 多核虚拟分区重构***
CN110489227A (zh) * 2019-07-09 2019-11-22 招联消费金融有限公司 一种资源分配方法、装置、计算机设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101043213A (zh) * 2007-03-15 2007-09-26 复旦大学 一种现场可编程逻辑阵列布线资源结构及其建模方法
CN108845884A (zh) * 2018-06-15 2018-11-20 中国平安人寿保险股份有限公司 物理资源分配方法、装置、计算机设备和存储介质
CN109766182A (zh) * 2018-12-18 2019-05-17 平安科技(深圳)有限公司 ***资源动态扩缩容方法、装置、计算机设备及存储介质
CN110427246A (zh) * 2019-06-29 2019-11-08 西南电子技术研究所(中国电子科技集团公司第十研究所) 多核虚拟分区重构***
CN110489227A (zh) * 2019-07-09 2019-11-22 招联消费金融有限公司 一种资源分配方法、装置、计算机设备和存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112308457A (zh) * 2020-11-23 2021-02-02 Oppo(重庆)智能科技有限公司 一种资源分配方法、装置及计算机可读存储介质
CN112506652A (zh) * 2020-12-01 2021-03-16 中国科学院深圳先进技术研究院 一种动态资源分区方法
CN112506652B (zh) * 2020-12-01 2023-10-20 中国科学院深圳先进技术研究院 一种动态资源分区方法
CN113204384A (zh) * 2021-05-14 2021-08-03 山东英信计算机技术有限公司 设备启动方法、装置及计算机可读存储介质
CN115225565A (zh) * 2022-07-25 2022-10-21 科东(广州)软件科技有限公司 数据包收发配置、收取、发送方法及装置、电子设备
CN115225565B (zh) * 2022-07-25 2023-12-15 科东(广州)软件科技有限公司 数据包收发配置、收取、发送方法及装置、电子设备

Also Published As

Publication number Publication date
CN111338779B (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
CN111338779B (zh) 资源分配方法、装置、计算机设备和存储介质
WO2021142609A1 (zh) 信息上报方法、装置、设备和存储介质
CN110096336B (zh) 数据监控方法、装置、设备和介质
CN111104208B (zh) 进程调度管理方法、装置、计算机设备及存储介质
CN111406250A (zh) 无服务器计算环境中的使用经预取的数据的配设
CN110704177B (zh) 计算任务处理方法、装置、计算机设备和存储介质
CN112905342B (zh) 资源调度方法、装置、设备及计算机可读存储介质
EP3208709B1 (en) Batch processing method and device for system invocation commands
CN115408100A (zh) 容器集群调度的方法、装置、设备及存储介质
CN112685148A (zh) 海量终端的异步通信方法、装置、计算机设备和存储介质
CN116185623A (zh) 任务分配方法、装置、电子设备及存储介质
CN111625339A (zh) 集群资源调度方法、装置、介质和计算设备
CN106775975B (zh) 进程调度方法及装置
CN113886058A (zh) 一种跨集群资源调度方法和装置
CN114546587A (zh) 一种在线图像识别服务的扩缩容方法及相关装置
CN107634978B (zh) 一种资源调度方法及装置
CN116881003A (zh) 资源分配方法、装置、服务设备及存储介质
US20240086086A1 (en) Ssd performance per power state improvement by deterministic utilization control
CN109478151B (zh) 网络可访问数据卷修改
CN116233022A (zh) 一种作业调度方法、服务器及服务器集群
CN115617515A (zh) 智能物联网操作***的内存分配方法、装置和存储介质
US12019909B2 (en) IO request pipeline processing device, method and system, and storage medium
CN111813564B (zh) 集群资源管理方法、装置及容器集群管理***
CN115878309A (zh) 资源分配方法、装置、处理核、设备和计算机可读介质
CN109062702B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 2301, building 5, Shenzhen new generation industrial park, 136 Zhongkang Road, Meidu community, Meilin street, Futian District, Shenzhen City, Guangdong Province

Applicant after: SHENZHEN ARCHFORCE FINANCIAL TECHNOLOGY Co.,Ltd.

Address before: 518048 603-604, block a, Tianjing building, Tian'an Digital City, Futian District, Shenzhen City, Guangdong Province

Applicant before: SHENZHEN ARCHFORCE FINANCIAL TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room 2301, building 5, Shenzhen new generation industrial park, 136 Zhongkang Road, Meidu community, Meilin street, Futian District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Huarui Distributed Technology Co.,Ltd.

Address before: Room 2301, building 5, Shenzhen new generation industrial park, 136 Zhongkang Road, Meidu community, Meilin street, Futian District, Shenzhen City, Guangdong Province

Patentee before: SHENZHEN ARCHFORCE FINANCIAL TECHNOLOGY Co.,Ltd.