CN110704177B - 计算任务处理方法、装置、计算机设备和存储介质 - Google Patents

计算任务处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN110704177B
CN110704177B CN201910832817.8A CN201910832817A CN110704177B CN 110704177 B CN110704177 B CN 110704177B CN 201910832817 A CN201910832817 A CN 201910832817A CN 110704177 B CN110704177 B CN 110704177B
Authority
CN
China
Prior art keywords
task
resource specification
environment
running
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.)
Active
Application number
CN201910832817.8A
Other languages
English (en)
Other versions
CN110704177A (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.)
Kingdee Software China Co Ltd
Original Assignee
Kingdee Software China 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 Kingdee Software China Co Ltd filed Critical Kingdee Software China Co Ltd
Priority to CN201910832817.8A priority Critical patent/CN110704177B/zh
Publication of CN110704177A publication Critical patent/CN110704177A/zh
Application granted granted Critical
Publication of CN110704177B publication Critical patent/CN110704177B/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/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)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种计算任务处理方法、装置、计算机设备和存储介质。所述方法包括:接收任务运行请求,所述任务运行请求包括用户申请资源规格和所述任务运行请求对应的计算任务的任务标识;获取当前运行环境类型,根据所述当前运行环境类型获取当前运行环境对应的环境资源规格;根据所述用户申请资源规格和所述环境资源规格确定目标资源规格,根据所述目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带所述任务运行请求对应的计算任务的任务标识;利用所述无服务容器执行所述任务运行请求对应的计算任务,所述计算任务执行结束后,退出所述无服务容器。上述方法提高了计算效率。

Description

计算任务处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种计算任务处理方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了ERP(Enterprise Resource Planning,企业资源计划)***,ERP是针对物资资源管理、人力资源管理、财务资源管理、信息资源管理集成一体化的企业管理软件。在ERP***中,报表计算、期末结账等计算任务需要大量运算资源。
传统技术中,通过调用计算任务所在节点对计算任务进行计算。然而,节点的计算资源是固定且有限的,当节点计算资源不足时,运维人员需要手动分配更多的计算资源给该节点,计算效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高计算效率的计算任务处理方法、装置、计算机设备和存储介质。
一种计算任务处理方法,所述方法包括:
接收任务运行请求,所述任务运行请求包括用户申请资源规格和所述任务运行请求对应的计算任务的任务标识;
获取当前运行环境类型,根据所述当前运行环境类型获取当前运行环境对应的环境资源规格;
根据所述用户申请资源规格和所述环境资源规格确定目标资源规格,根据所述目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带所述任务运行请求对应的计算任务的任务标识;
利用所述无服务容器执行所述任务运行请求对应的计算任务,所述计算任务执行结束后,退出所述无服务容器。
在其中一个实施例中,所述接收任务运行请求之前,还包括:
接收存储请求,所述存储请求包括所述计算任务的任务标识,所述任务标识是由终端根据所述计算任务的运行代码创建对应的计算任务时生成的任务标识;
根据所述存储请求将所述计算任务的任务标识、所述计算任务的运行代码、所述计算任务对应的运行信息关联存储至公共存储空间。
在其中一个实施例中,所述当前运行环境类型包括公有云环境,私有云环境和混合云环境中的至少一种。
在其中一个实施例中,所述根据所述用户申请资源规格和所述环境资源规格确定目标资源规格包括:
当所述用户申请资源规格大于所述环境资源规格时,所述目标资源规格为所述环境资源规格;
当所述用户申请资源规格小于或等于所述环境资源规格时,所述目标资源规格为所述用户申请资源规格。
在其中一个实施例中,所述利用所述无服务容器执行所述任务运行请求对应的计算任务包括:
从所述无服务容器获取所述任务标识,从所述公共存储空间根据所述任务标识获取所述计算任务对应的运行信息;
根据所述运行信息在公共存储空间下载所述运行代码,根据所述运行信息在所述无服务容器中运行所述运行代码;
获取运行结果并存储于所述公共存储空间。
在其中一个实施例中,所述方法还包括:
当所述任务运行请求多于一个并且所述目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将所述任务运行请求按照接收时间顺序加入排队队列;
当检测到所述目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从所述排队队列中按照接收时间顺序依次取出所述任务运行请求,针对所述任务运行请求创建对应的无服务容器。
一种计算任务处理装置,所述装置包括:
接收请求模块,用于接收任务运行请求,所述任务运行请求包括用户申请资源规格和所述任务运行请求对应的计算任务的任务标识;
获取环境资源规格模块,用于获取当前运行环境类型,根据所述当前运行环境类型获取当前运行环境对应的环境资源规格;
创建无服务容器模块,用于根据所述用户申请资源规格和所述环境资源规格确定目标资源规格,根据所述目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带所述任务运行请求对应的计算任务的任务标识;
执行计算任务模块,利用所述无服务容器执行所述任务运行请求对应的计算任务,所述计算任务执行结束后,退出所述无服务容器。
在其中一个实施例中,所述装置还包括:
存储模块,用于接收存储请求,所述存储请求包括所述计算任务的任务标识,所述任务标识是由终端根据所述计算任务的运行代码创建对应的计算任务时生成的任务标识;根据所述存储请求将所述计算任务的任务标识、所述计算任务的运行代码、所述计算任务对应的运行信息关联存储至公共存储空间。
在其中一个实施例中,所述创建无服务容器模块还用于当所述用户申请资源规格大于所述环境资源规格时,所述目标资源规格为所述环境资源规格;当所述用户申请资源规格小于或等于所述环境资源规格时,所述目标资源规格为所述用户申请资源规格。
在其中一个实施例中,所述执行计算任务模块还用于从所述无服务容器获取所述任务标识,从所述公共存储空间根据所述任务标识获取所述计算任务对应的运行信息;根据所述运行信息在公共存储空间下载所述运行代码,根据所述运行信息在所述无服务容器中运行所述运行代码;获取运行结果并存储于所述公共存储空间。
在其中一个实施例中,所述装置还包括:
任务运行请求排队模块,用于当所述任务运行请求多于一个并且所述目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将所述任务运行请求按照接收时间顺序加入排队队列;
当检测到所述目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从所述排队队列中按照接收时间顺序依次取出所述任务运行请求,针对所述任务运行请求创建对应的无服务容器。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收任务运行请求,所述任务运行请求包括用户申请资源规格和所述任务运行请求对应的计算任务的任务标识;
获取当前运行环境类型,根据所述当前运行环境类型获取当前运行环境对应的环境资源规格;
根据所述用户申请资源规格和环境资源规格确定目标资源规格,根据所述目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带所述任务运行请求对应的计算任务的任务标识;
利用所述无服务容器执行所述任务运行请求对应的计算任务,所述计算任务执行结束后,退出所述无服务容器。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收任务运行请求,所述任务运行请求包括用户申请资源规格和所述任务运行请求对应的计算任务的任务标识;
获取当前运行环境类型,根据所述当前运行环境类型获取当前运行环境对应的环境资源规格;
根据所述用户申请资源规格和环境资源规格确定目标资源规格,根据所述目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带所述任务运行请求对应的计算任务的任务标识;
利用所述无服务容器执行所述任务运行请求对应的计算任务,所述计算任务执行结束后,退出所述无服务容器。
上述计算任务处理方法、装置、计算机设备和存储介质,通过接收任务运行请求,任务运行请求包括用户申请资源规格和任务运行请求对应的计算任务的任务标识;获取当前运行环境类型,根据当前运行环境类型获取当前运行环境对应的环境资源规格;根据用户申请资源规格和环境资源规格确定目标资源规格,根据目标资源规格通过当前运行环境提供的接口创建无服务容器,无服务容器携带任务运行请求对应的计算任务的任务标识;利用无服务容器执行任务运行请求对应的计算任务,计算任务执行结束后,退出无服务容器。相对于传统技术中,当计算资源紧张时需要人为扩充计算资源,该方法可以根据用户申请资源规格和环境资源规格确定目标资源规格,操作更简化,提高了计算效率。
附图说明
图1为一个实施例中计算任务处理方法的应用环境图;
图2为一个实施例中计算任务处理方法的流程示意图;
图3为另一个实施例中计算任务处理方法的流程示意图;
图4为一个实施例中计算任务处理的流程示意图;
图5为一个实施例中计算任务处理装置的结构框图;
图6为另一个实施例中计算任务处理装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的计算处理方法,可以应用于如图1所示的应用环境中。如图1所示,该应用环境包括终端110、服务器120,终端110和服务器120之间可以通过网络进行通信,通信网络可以是无线或者有限通信网络,例如IP网络、蜂窝数据网络等,其中终端、服务器的设备个数不限。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
可以在服务器120上执行计算任务处理方法,用户可在终端110上编写运行代码创建计算任务,发送对应于该计算任务的任务运行请求至服务器120,任务运行请求包括用户申请资源规格和任务运行请求对应的计算任务的任务标识。服务器120获取当前运行环境类型,根据当前运行环境类型获取当前运行环境的环境资源规格。服务器120根据用户申请资源规格和当前运行环境的资源规格确定目标资源规格,根据目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带任务运行请求对应的计算任务的任务标识。利用所述无服务容器执行任务运行请求对应的计算任务,计算任务执行结束后,退出所述无服务容器。
在一个实施例中,如图2所示,提供了一种计算任务处理方法,以该方法应用于图1中的应用环境为例进行说明,包括以下步骤:
步骤202,接收任务运行请求,任务运行请求包括用户申请资源规格和任务运行请求对应的计算任务的任务标识。
其中,任务标识是任务运行请求对应的计算任务的唯一标识。用户申请资源规格是指用户在服务器资源池中选择的适合计算任务的资源规格。资源池是指计算任务执行时涉及到的软硬件结合,包括但不限于CPU核数,主频范围,内存大小,磁盘是否为高速存取磁盘。计算任务是根据用户提交的运行代码创建的。一个运行代码可以创建一个计算任务,也可以创建多个计算任务。一个任务运行请求对应一个计算任务。
具体地,用户在终端编写运行代码,根据该运行代码在终端创建至少一个计算任务。在服务器的资源池中确定计算任务对应的用户申请资源规格。终端向服务器发送携带用户申请资源规格和任务标识的任务运行请求。终端可以同时发送多个任务运行请求。一个任务运行请求对应一个计算任务。任务运行请求用于指示服务器创建无服务容器,并利用该无服务容器执行任务运行请求对应的计算任务。
步骤204,获取当前运行环境类型,根据当前运行环境类型获取当前运行环境对应的环境资源规格。
其中,当前运行环境类型包括公有云环境,私有云环境和混合云环境中的至少一种。环境资源规格是指当前运行环境可以提供的最大资源规格。
具体地,服务器接收到用户通过终端发送的任务运行请求后,获取当前运行环境的环境类型,并根据当前运行环境类型获取当前运行环境对应的环境资源规格。
步骤206,根据用户申请资源规格和环境资源规格确定目标资源规格,根据目标资源规格通过当前运行环境提供的接口创建无服务容器,无服务容器携带任务运行请求对应的计算任务的任务标识。
其中,目标资源规格是执行计算任务时使用的资源规格。
无服务容器不是固定运行的容器。无服务容器是在需要时启动,使用完毕后就销毁的按需容器。开发者使用无服务容器可以不用过多考虑服务器的问题。无服务容器具有以下特点:1、不需要维护,不用担心运营和维护的问题。2、降低成本。无服务容器是按需创建,按需计费的。而传统的容器是按资源和管理计费。容器比无服务容器增加了管理费用和闲置资源费用。3、弹性扩展。
无服务容器可以应用在事件请求、流量突发、处理大数据等场景中。事件请求场景包括但不限于定制图片,物联网中的低频请求,定制事件和固定时间触发。流量突发场景包括但不限于弹性扩展应对突发流量,转码和流量扩容。
当前运行环境提供的接口是用来创建无服务容器的软件类接口,例如亚马逊云的创建无服务容器接口,华为云的无服务器云函数。
具体地,当用户申请资源规格大于环境资源规格时,目标资源规格为环境资源规格;当用户申请资源规格小于或等于环境资源规格时,目标资源规格为用户申请资源规格。在服务器上确定目标资源规格后,根据目标资源规格通过当前运行环境提供的接口创建无服务容器。创建的无服务容器携带任务运行请求对应的计算任务的唯一标识。
步骤208,利用无服务容器执行任务运行请求对应的计算任务,计算任务执行结束后,退出无服务容器。
具体地,步骤206中创建的无服务容器携带任务标识,根据该任务标识从公共存储空间获取运行信息,下载运行代码,根据运行信息在无服务容器中通过运行该运行代码执行计算任务。计算任务执行完毕后,获得运行结果,将该运行结果存储于公共存储空间并退出该无服务容器。完成计算任务后,该服务容器被销毁。
上述计算任务处理方法中,通过接收任务运行请求,任务运行请求包括用户申请资源规格和任务运行请求对应的计算任务的任务标识;获取当前运行环境类型,根据当前运行环境类型获取当前运行环境对应的环境资源规格;根据用户申请资源规格和环境资源规格确定目标资源规格,根据目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带任务运行请求对应的计算任务的任务标识;利用所述无服务容器执行任务运行请求对应的计算任务,计算任务执行结束后,退出所述无服务容器,相对于传统技术中,当计算资源紧张时需要人为扩充计算资源,该方法可以根据用户申请资源规格和环境资源规格确定目标资源规格,动态申请计算资源,操作更便捷,提高了计算效率。
在一个实施例中,如图3所示,计算任务处理方法还可以包括:
步骤302,接收存储请求,存储请求包括计算任务的任务标识,该任务标识是由终端根据计算任务的运行代码创建对应的计算任务时生成的任务标识。
其中,服务器可以接收终端发送的存储请求,存储请求用于指示服务器将计算任务的任务标识、计算任务的运行代码、计算任务对应的运行信息关联存储至公共存储空间。运行代码是用户在终端编写的,运行代码可以使用Java、Python等语言编写。一个运行代码可以创建一个计算任务,也可以创建多个计算任务。
具体地,用户在终端编写运行代码,可以使用Java、Python等语言编写运行代码。终端根据该运行代码创建对应的计算任务。创建计算任务的时候会生成对应所述计算任务的唯一任务标识。
步骤304,根据存储请求将计算任务的任务标识、计算任务的运行代码、计算任务对应的运行信息关联存储至公共存储空间。
其中,公共存储空间是通过存储介质存储、管理数据的一个载体空间,对外提供数据存储和业务访问功能。
具体地,服务器根据存储请求将计算任务对应的运行信息、运行代码、任务标识关联存储至公共存储空间。将计算任务对应的运行信息、运行代码、任务标识关联以便无服务容器通过任务标识获取运行信息、运行代码。
在一个实施例中,当前运行环境类型包括公有云环境,私有云环境和混合云环境中的至少一种。
其中,公有云环境通常指第三方提供商为用户提供的能够使用的云环境。公有云环境一般可通过互联网使用,公有云环境的核心属性是共享资源服务。公有云环境为存储和管理数据提供了几乎无限多的空间,也为用户完成各类应用提供了无限强大的计算能力,资源拓展能力没有限制。公有云环境包括但不限于亚马逊云、华为云和阿里云。
私有云环境是单一用户专用的云环境,不对外开放。私有云环境可以由企业或者第三方提供商拥有、管理和运营。私有云环境的资源拓展能力是有限的,但是私有云环境的安全性比公有云环境好。
混合云环境融合了公有云环境和私有云环境。混合云环境既可以利用私有云环境的安全性,将内部重要的数据保存在本地数据中心,同时可以使用公有云环境的计算资源,更高效快捷地完成工作。
在一个实施例中,步骤206还包括:当用户申请资源规格大于环境资源规格时,目标资源规格为环境资源规格;当用户申请资源规格小于或等于环境资源规格时,目标资源规格为用户申请资源规格。
具体地,当用户申请资源规格大于环境资源规格,即用户申请资源规格超过了环境资源规格的最大限制时,只能使用环境资源规格执行计算任务。对于公有云环境和混合云环境,环境资源规格没有最大限制,不会存在上述情况。当用户申请资源规格小于或等于环境资源规格,即用户申请资源规格小于或等于环境资源规格的最大限制时,可以使用用户申请资源规格执行计算任务。若用户申请资源规格小于环境资源规格的最小限制,可以利用资源隔离技术保证只使用用户申请资源规格执行计算任务,不会导致资源浪费。
在一个实施例中,步骤208还包括:从无服务容器获取任务标识,从公共存储空间根据任务标识获取计算任务对应的运行信息;根据运行信息在公共存储空间下载运行代码,根据运行信息在无服务容器中运行该运行代码;获取运行结果并存储于公共存储空间。
具体地,创建无服务容器时将任务标识加入到无服务容器的环境变量中。运行无服务容器时,首先读取任务标识,从公共存储空间获取与任务标识关联的运行信息,即从公共存储空间获取任务运行所需的运行代码存储位置,参数,运行入口等信息。接着,无服务容器从公共存储空间下载运行代码并加载,使用获取的运行入口,参数等信息执行计算任务。最后,无服务容器将计算任务执行完毕后获得的运行结果存储于公共存储空间。
在一个实施例中,如图3所示,计算任务处理方法还可以包括:
步骤306,当任务运行请求多于一个并且目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将任务运行请求按照接收时间顺序加入排队队列。
其中,闲置环境资源规格是当前运行环境剩余可用的资源规格。
具体地,当任务运行请求多于一个时,会因为一些任务运行请求对应的计算任务已经占用了部分环境资源规格,导致剩余环境资源规格不够其他任务运行请求对应的计算任务使用的情况。当任务运行请求对应的计算任务的目标资源规格大于当前运行环境的闲置资源规格,即当前运行环境的剩余资源规格不够使用时,服务器会建立排队队列。服务器按照接收到任务运行请求的时间顺序把相应的任务运行请求加入排队队列。
步骤308,当检测到目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从排队队列中按照接收时间顺序依次取出任务运行请求,针对任务运行请求创建对应的无服务容器。
具体地,当占用部分环境资源规格的计算任务执行结束后,占用的环境资源规格被释放。当检测到任务运行请求对应的计算任务的目标资源规格小于或等于当前运行环境的闲置资源规格,即当前运行环境的剩余资源规格足够使用时,服务器按照接收时间顺序依次取出对应的任务运行请求,针对任务运行请求创建对应的无服务容器。
在一个实施例中,如图4所示,提供了一种任务处理方法。
编写任务代码。具体地,用户在终端编写任务代码。
任务代码打包存储。具体地,终端发送存储请求至服务器,服务器根据该存储请求将任务代码打包存储至公共存储空间。
创建任务,产生唯一任务ID。具体地,终端根据任务代码创建计算任务,并生成对应计算任务的唯一的任务ID(Identity Document,身份标识号)。任务ID关联任务运行的相关信息。
存储代码保存位置,运行入口,参数。具体地,终端发送存储请求至服务器,服务器根据该存储请求将任务ID关联的任务运行的相关信息,如运行任务参数,该代码保存位置,运行该任务的入口代码位置等,存储至公共存储空间。
申请所需资源,提交任务运行请求。具体地,用户申请所需资源,即用户在服务器的资源池中针对该任务选取适合规格的资源,并提交任务运行请求至服务器。
识别云环境。具体地,服务器识别云环境,即服务器识别当前运行环境,当前运行环境包括公有云环境、私有云环境和混合云环境中的至少一种。
获取当前环境所能提供资源规格。具体地,服务器获取当前环境所能提供的资源规格。服务器根据用户申请资源规格和当前环境所能提供的资源规格确定目标资源规格。目标资源规格是任务运行时使用的资源规格。
根据当前云环境的接口创建指定资源的serverless容器。其中,指定资源为根据用户申请资源和当前环境所能提供的资源规格确定的目标资源规格。
任务ID作为环境变量运行serverless容器。
读取任务代码位置,运行入口,参数。具体地,serverless容器通过读取任务ID,在公共存储空间获取该任务运行所需的代码位置、参数、运行入口。
下载任务代码并加载。具体地,serverless容器在公共存储空间下载任务代码并加载运行。
运行任务。具体地,在serverless容器使用所得的运行入口,参数等信息运行任务。
保存任务运行结果。具体地,任务运行结束后,保存任务运行结果,即serverless容器向公共存储空间写入运算结果。
退出serverless容器。具体地,完成运行任务后,退出创建的serverless容器。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种计算任务处理装置,包括:接收请求模块502、获取环境资源规格模块504、创建无服务容器模块506和执行计算任务模块508,其中:
接收请求模块502,用于接收任务运行请求,任务运行请求包括用户申请资源规格和任务运行请求对应的计算任务的任务标识。
获取环境资源规格模块504,用于获取当前运行环境类型,根据当前运行环境类型获取当前运行环境对应的环境资源规格。
创建无服务容器模块506,用于根据用户申请资源规格和环境资源规格确定目标资源规格,根据目标资源规格通过当前运行环境提供的接口创建无服务容器,无服务容器携带任务运行请求对应的计算任务的任务标识。
执行计算任务模块508,用于利用无服务容器执行任务运行请求对应的计算任务,计算任务执行结束后,退出无服务容器。
在一个实施例中,创建无服务容器模块506还用于当用户申请资源规格大于环境资源规格时,目标资源规格为环境资源规格;当用户申请资源规格小于或等于环境资源规格时,目标资源规格为用户申请资源规格。
在一个实施例中,执行计算任务模块508还用于从无服务容器获取任务标识,从公共存储空间根据任务标识获取计算任务对应的运行信息;根据运行信息在公共存储空间下载运行代码,根据运行信息在无服务容器中运行该运行代码;获取运行结果并存储于公共存储空间。
在一个实施例中,当前运行环境类型包括公有云环境,私有云环境和混合云环境中的至少一种。
如图6所示,在一个实施例中,装置还包括:
存储模块501,用于接收存储请求,该存储请求包括计算任务的任务标识,该任务标识是由终端根据计算任务的运行代码创建对应的计算任务时生成的任务标识;根据该存储请求将计算任务的任务标识、计算任务的运行代码、计算任务对应的运行信息关联存储至公共存储空间。
在一个实施例中,装置还包括:
任务运行请求排队模块505,用于当任务运行请求多于一个并且目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将任务运行请求按照接收时间顺序加入排队队列;当检测到目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从排队队列中按照接收时间顺序依次取出任务运行请求,针对任务运行请求创建对应的无服务容器。
关于计算任务处理装置的具体限定可以参见上文中对于计算任务处理方法的限定,在此不再赘述。上述计算任务处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储运行代码数据、计算任务运行信息、运行结果等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种计算任务处理方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收任务运行请求,任务运行请求包括用户申请资源规格和任务运行请求对应的计算任务的任务标识;
获取当前运行环境类型,根据当前运行环境类型获取当前运行环境对应的环境资源规格;
根据用户申请资源规格和环境资源规格确定目标资源规格,根据目标资源规格通过当前运行环境提供的接口创建无服务容器,无服务容器携带任务运行请求对应的计算任务的任务标识;
利用无服务容器执行任务运行请求对应的计算任务,计算任务执行结束后,退出无服务容器。
在一个实施例中,所述当前运行环境类型包括公有云环境,私有云环境和混合云环境中的至少一种。
在一个实施例中,所述根据用户申请资源规格和环境资源规格确定目标资源规格包括:
当用户申请资源规格大于环境资源规格时,目标资源规格为环境资源规格;当用户申请资源规格小于或等于环境资源规格时,目标资源规格为用户申请资源规格。
在一个实施例中,利用无服务容器执行任务运行请求对应的计算任务包括:
从无服务容器获取任务标识,从公共存储空间根据任务标识获取计算任务对应的运行信息;根据运行信息在公共存储空间下载运行代码,根据运行信息在无服务容器中运行运行代码;获取运行结果并存储于公共存储空间。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
接收存储请求,存储请求包括计算任务的任务标识,任务标识是由终端根据计算任务的运行代码创建对应的计算任务时生成的任务标识;根据存储请求将计算任务的任务标识、计算任务的运行代码、计算任务对应的运行信息关联存储至公共存储空间。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当任务运行请求多于一个并且目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将任务运行请求按照接收时间顺序加入排队队列;当检测到目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从排队队列中按照接收时间顺序依次取出任务运行请求,针对任务运行请求创建对应的无服务容器。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收任务运行请求,任务运行请求包括用户申请资源规格和任务运行请求对应的计算任务的任务标识;
获取当前运行环境类型,根据当前运行环境类型获取当前运行环境对应的环境资源规格;
根据用户申请资源规格和环境资源规格确定目标资源规格,根据目标资源规格通过当前运行环境提供的接口创建无服务容器,无服务容器携带任务运行请求对应的计算任务的任务标识;
利用无服务容器执行任务运行请求对应的计算任务,计算任务执行结束后,退出无服务容器。
在一个实施例中,所述当前运行环境类型包括公有云环境,私有云环境和混合云环境中的至少一种。
在一个实施例中,所述根据用户申请资源规格和环境资源规格确定目标资源规格包括:
当用户申请资源规格大于环境资源规格时,目标资源规格为环境资源规格;当用户申请资源规格小于或等于环境资源规格时,目标资源规格为用户申请资源规格。
在一个实施例中,利用无服务容器执行任务运行请求对应的计算任务包括:
从无服务容器获取任务标识,从公共存储空间根据任务标识获取计算任务对应的运行信息;根据运行信息在公共存储空间下载运行代码,根据运行信息在无服务容器中运行运行代码;获取运行结果并存储于公共存储空间。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
接收存储请求,存储请求包括计算任务的任务标识,任务标识是由终端根据计算任务的运行代码创建对应的计算任务时生成的任务标识;根据存储请求将计算任务的任务标识、计算任务的运行代码、计算任务对应的运行信息关联存储至公共存储空间。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当任务运行请求多于一个并且目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将任务运行请求按照接收时间顺序加入排队队列;当检测到目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从排队队列中按照接收时间顺序依次取出任务运行请求,针对任务运行请求创建对应的无服务容器。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种计算任务处理方法,应用于服务器,所述方法包括:
接收存储请求,所述存储请求包括计算任务的任务标识,所述任务标识是由终端根据所述计算任务的运行代码创建对应的计算任务时生成的任务标识;
根据所述存储请求将所述计算任务的任务标识、所述计算任务的运行代码、所述计算任务对应的运行信息关联存储至公共存储空间;
接收任务运行请求,所述任务运行请求包括用户申请资源规格和所述任务标识;
获取当前运行环境类型,根据所述当前运行环境类型获取当前运行环境对应的环境资源规格;
当所述用户申请资源规格大于所述环境资源规格时,确定目标资源规格为所述环境资源规格;
当所述用户申请资源规格小于或等于所述环境资源规格时,确定目标资源规格为所述用户申请资源规格;
根据所述目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带所述任务标识;
从所述无服务容器获取所述任务标识,从所述公共存储空间根据所述任务标识获取所述计算任务对应的运行信息,根据所述运行信息在所述公共存储空间下载所述运行代码,根据所述运行信息在所述无服务容器中运行所述运行代码,获取运行结果并存储于所述公共存储空间,所述计算任务执行结束后,退出所述无服务容器。
2.根据权利要求1所述的方法,其特征在于,所述用户申请资源规格是指用户在服务器资源池中选择的与计算任务匹配的资源规格。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述用户申请资源规格小于所述当前运行环境对应的最小资源规格时,基于资源隔离技术,根据所述用户申请资源规格通过当前运行环境提供的接口创建无服务容器。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述任务标识加入到所述无服务容器的环境变量中。
5.根据权利要求1所述的方法,其特征在于,所述当前运行环境类型包括公有云环境、私有云环境和混合云环境中的至少一种。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述任务运行请求多于一个并且所述目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将所述任务运行请求按照接收时间顺序加入排队队列;
当检测到所述目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从所述排队队列中按照接收时间顺序依次取出所述任务运行请求,针对所述任务运行请求创建对应的无服务容器。
7.一种计算任务处理装置,其特征在于,所述装置包括:
存储模块,用于接收存储请求,所述存储请求包括计算任务的任务标识,所述任务标识是由终端根据所述计算任务的运行代码创建对应的计算任务时生成的任务标识,根据所述存储请求将所述计算任务的任务标识、所述计算任务的运行代码、所述计算任务对应的运行信息关联存储至公共存储空间;
接收请求模块,用于接收任务运行请求,所述任务运行请求包括用户申请资源规格和所述任务标识;
获取环境资源规格模块,用于获取当前运行环境类型,根据所述当前运行环境类型获取当前运行环境对应的环境资源规格;
创建无服务容器模块,用于当所述用户申请资源规格大于所述环境资源规格时,确定目标资源规格为所述环境资源规格,当所述用户申请资源规格小于或等于所述环境资源规格时,确定目标资源规格为所述用户申请资源规格,根据所述目标资源规格通过当前运行环境提供的接口创建无服务容器,所述无服务容器携带所述任务标识;
执行计算任务模块,用于从所述无服务容器获取所述任务标识,从所述公共存储空间根据所述任务标识获取所述计算任务对应的运行信息,根据所述运行信息在所述公共存储空间下载所述运行代码,根据所述运行信息在所述无服务容器中运行所述运行代码,获取运行结果并存储于所述公共存储空间,所述计算任务执行结束后,退出所述无服务容器。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
任务运行请求排队模块,用于
当所述任务运行请求多于一个并且所述目标资源规格大于当前运行环境的闲置环境资源规格时,建立排队队列,将所述任务运行请求按照接收时间顺序加入排队队列;
当检测到所述目标资源规格小于或等于当前运行环境的闲置环境资源规格时,从所述排队队列中按照接收时间顺序依次取出所述任务运行请求,针对所述任务运行请求创建对应的无服务容器。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN201910832817.8A 2019-09-04 2019-09-04 计算任务处理方法、装置、计算机设备和存储介质 Active CN110704177B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910832817.8A CN110704177B (zh) 2019-09-04 2019-09-04 计算任务处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910832817.8A CN110704177B (zh) 2019-09-04 2019-09-04 计算任务处理方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN110704177A CN110704177A (zh) 2020-01-17
CN110704177B true CN110704177B (zh) 2022-06-10

Family

ID=69194317

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910832817.8A Active CN110704177B (zh) 2019-09-04 2019-09-04 计算任务处理方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN110704177B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314735A (zh) * 2020-03-06 2020-06-19 新华智云科技有限公司 视频处理方法、***及存储介质
CN112966256B (zh) * 2021-02-01 2022-11-18 万翼科技有限公司 基于建筑信息模型的设备管理方法及相关装置
CN112905328B (zh) * 2021-03-04 2023-09-19 杭州海康威视数字技术股份有限公司 任务处理方法、装置及计算机可读存储介质
CN113778956A (zh) * 2021-09-15 2021-12-10 京东科技信息技术有限公司 资源处理方法、装置、电子设备和计算机可读介质
CN113903219A (zh) * 2021-11-22 2022-01-07 创盛视联数码科技(北京)有限公司 一种编程教学的展示方法、装置、电子设备及存储介质
CN116107913B (zh) * 2023-04-06 2023-11-14 阿里云计算有限公司 单节点服务器的测试控制方法、装置及***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014063449A (ja) * 2012-09-24 2014-04-10 Hitachi Systems Ltd リソース管理システム、リソース管理方法及びリソース管理プログラム
CN103780655A (zh) * 2012-10-24 2014-05-07 阿里巴巴集团控股有限公司 一种消息传递接口任务和资源调度***及方法
CN106708622A (zh) * 2016-07-18 2017-05-24 腾讯科技(深圳)有限公司 集群资源处理方法和***、资源处理集群
CN108845878A (zh) * 2018-05-08 2018-11-20 南京理工大学 基于无服务器计算的大数据处理方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105607955A (zh) * 2015-12-23 2016-05-25 浪潮集团有限公司 一种计算任务分配的方法及装置
CN107222531B (zh) * 2017-05-23 2020-03-03 北京科技大学 一种容器云资源调度方法
CN107424074A (zh) * 2017-07-27 2017-12-01 广州弘融信息科技有限公司 一种基于Serverless技术的互联网借贷***及其方法
US11030016B2 (en) * 2017-12-07 2021-06-08 International Business Machines Corporation Computer server application execution scheduling latency reduction
CN108089924A (zh) * 2017-12-18 2018-05-29 郑州云海信息技术有限公司 一种任务运行方法及装置
CN110166507B (zh) * 2018-02-12 2023-06-23 北京京东尚科信息技术有限公司 多资源调度方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014063449A (ja) * 2012-09-24 2014-04-10 Hitachi Systems Ltd リソース管理システム、リソース管理方法及びリソース管理プログラム
CN103780655A (zh) * 2012-10-24 2014-05-07 阿里巴巴集团控股有限公司 一种消息传递接口任务和资源调度***及方法
CN106708622A (zh) * 2016-07-18 2017-05-24 腾讯科技(深圳)有限公司 集群资源处理方法和***、资源处理集群
CN108845878A (zh) * 2018-05-08 2018-11-20 南京理工大学 基于无服务器计算的大数据处理方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Evaluation of Production Serverless Computing Environments;Hyungro Lee 等;《2018 IEEE 11th International Conference on Cloud Computing (CLOUD)》;20180910;第1-10页 *
网络环境下基于用户信息需求的信息资源配置研究综述;郑继来;《信息资源管理学报》;20111216;第89-94页 *

Also Published As

Publication number Publication date
CN110704177A (zh) 2020-01-17

Similar Documents

Publication Publication Date Title
CN110704177B (zh) 计算任务处理方法、装置、计算机设备和存储介质
WO2021142609A1 (zh) 信息上报方法、装置、设备和存储介质
CN110612705B (zh) 一种无服务器架构下业务部署的方法和函数管理平台
CN108573371B (zh) 数据审批方法、装置、计算机设备和存储介质
CN108399101B (zh) 资源调度的方法、装置和***
US20200328984A1 (en) Method and apparatus for allocating resource
CN112000348A (zh) 服务灰度发布的控制方法、装置、计算机设备
CN108492005B (zh) 项目数据处理方法、装置、计算机设备和存储介质
CN112099979B (zh) 一种访问控制方法、装置、计算机设备和存储介质
CN106897299B (zh) 一种数据库访问方法及装置
CN111885184A (zh) 高并发场景下热点访问关键字处理方法和装置
CN114281263A (zh) 容器集群管理***的存储资源处理方法、***和设备
CN111338779A (zh) 资源分配方法、装置、计算机设备和存储介质
CN111694639A (zh) 进程容器地址的更新方法、装置和电子设备
CN111209061A (zh) 用户信息的填写方法、装置、计算机设备和存储介质
US20200285527A1 (en) Determination method, information processing apparatus, and storage medium
CN113065887A (zh) 资源处理方法、装置、计算机设备和存储介质
CN112631994A (zh) 数据迁移方法及***
CN110609707B (zh) 在线数据处理***生成方法、装置及设备
CN112650710B (zh) 数据迁移的发送方法及装置、存储介质、电子装置
CN112688980B (zh) 资源分发方法、装置、计算机设备
CN114924888A (zh) 资源配置方法、数据处理方法、装置、设备和存储介质
WO2020211358A1 (zh) 数据库调度方法、装置、计算机设备及存储介质
CN114040378A (zh) 应用的编排方法、装置、计算机设备和存储介质
CN109548000B (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