CN114003360A - 多租户任务管理方法、装置、电子设备及存储介质 - Google Patents

多租户任务管理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114003360A
CN114003360A CN202111266008.9A CN202111266008A CN114003360A CN 114003360 A CN114003360 A CN 114003360A CN 202111266008 A CN202111266008 A CN 202111266008A CN 114003360 A CN114003360 A CN 114003360A
Authority
CN
China
Prior art keywords
task
real
starting
tenant
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111266008.9A
Other languages
English (en)
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.)
Chery Automobile Co Ltd
Wuhu Lion Automotive Technologies Co Ltd
Original Assignee
Chery Automobile Co Ltd
Wuhu Lion Automotive Technologies 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 Chery Automobile Co Ltd, Wuhu Lion Automotive Technologies Co Ltd filed Critical Chery Automobile Co Ltd
Priority to CN202111266008.9A priority Critical patent/CN114003360A/zh
Publication of CN114003360A publication Critical patent/CN114003360A/zh
Pending legal-status Critical Current

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及云平台多租户部署技术领域,特别涉及一种多租户任务管理方法、装置、电子设备及存储介质,其中,方法包括:接收多个租户的任务请求;检测每个租户的任务请求的任务类别,并在任务类别为实时任务时,由定时任务模块中与多个租户一一对应的启动类生成至少一个启动服务;根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库。由此,可以使得多个租户的定时任务各自独立、相互隔离,服务于对应租户的同时而不对其他租户产生干扰,解决了相关技术中数据隔离时,有几个租户就需要启动几个微服务,导致服务器资源的浪费的问题。

Description

多租户任务管理方法、装置、电子设备及存储介质
技术领域
本申请涉及云平台多租户部署技术领域,特别涉及一种多租户任务管理方法、装置、电子设备及存储介质。
背景技术
多租户技术或称多重租赁技术,是一种软件架构技术,是实现如何在多用户(一般是面向企业用户)环境下共用相同的系统或程序组件,并且可确保各用户之间数据的隔离性。
目前,在多租户架构中,涉及到实例和数据共享及隔离的问题。在平台部署中,根据实际业务情况,主要分成三种方式:(1)实例和数据全部共享;(2)实例和数据部分共享(实例或数据共享);(3)实例和数据全部隔离。
然而,在不借助外部框架(如Spring Quartz)的情况下,通过实例共享/隔离的方式不能完美解决多租户定时任务的问题。原因主要在于,若实例共享会导致定时任务服务不知道自己属于哪个租户,若隔离,则有几个租户就需要启动几个微服务,会导致服务器资源的浪费,因为除了定时任务,其他业务服务是不需要隔离的,亟待解决。
发明内容
本申请提供一种多租户任务管理方法、装置、电子设备及存储介质,可以使得多个租户的定时任务各自独立、相互隔离,服务于对应租户的同时而不对其他租户产生干扰,解决了相关技术中数据隔离时,有几个租户就需要启动几个微服务,导致服务器资源的浪费的问题。
本申请第一方面实施例提供一种多租户任务管理方法,包括以下步骤:
接收多个租户的任务请求;
检测每个租户的任务请求的任务类别,并在所述任务类别为实时任务时,由定时任务模块中与所述多个租户一一对应的启动类生成至少一个启动服务;以及
根据所述至少一个启动服务启动所述实时任务对应的至少一个目标隔离数据库。
可选地,所述根据所述至少一个启动服务启动实时任务对应的至少一个目标隔离数据库,包括:
获取所述实时任务对应的至少一个目标隔离数据库的启动参数;
获取与所述每个租户的身份识别信息对应的至少一个目标隔离数据库;
根据所述实时任务与所述每个租户之间的对应关系确定所述实时任务对应的至少一个目标隔离数据库;
根据所述启动参数启动所述实时任务对应的至少一个目标隔离数据库。
可选地,还包括:
在所述任务类别为非实时任务时,基于业务模块中唯一启动类生成业务服务,以通过所述业务服务处理所述非实时任务。
可选地,其中,所述定时任务模块与所述业务模块相互独立设置。
本申请第二方面实施例提供一种多租户任务管理装置,包括:
接收模块,用于接收多个租户的任务请求;
第一生成模块,用于检测每个租户的任务请求的任务类别,并在所述任务类别为实时任务时,由定时任务模块中与所述多个租户一一对应的启动类生成至少一个启动服务;以及
启动模块,用于根据所述至少一个启动服务启动所述实时任务对应的至少一个目标隔离数据库。
可选地,所述启动模块,具体用于:
获取所述实时任务对应的至少一个目标隔离数据库的启动参数;
获取与所述每个租户的身份识别信息对应的至少一个目标隔离数据库;
根据所述实时任务与所述每个租户之间的对应关系确定所述实时任务对应的至少一个目标隔离数据库;
根据所述启动参数启动所述实时任务对应的至少一个目标隔离数据库。
可选地,还包括:
第二生成模块,用于在所述任务类别为非实时任务时,基于业务模块中唯一启动类生成业务服务,以通过所述业务服务处理所述非实时任务。
可选地,其中,所述定时任务模块与所述业务模块相互独立设置。
本申请第三方面实施例提供一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行如上述实施例所述的多租户任务管理方法。
本申请第四方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现如上述实施例所述的多租户任务管理方法。
由此,可以接收多个租户的任务请求,并检测每个租户的任务请求的任务类别,并在任务类别为实时任务时,由定时任务模块中与多个租户一一对应的启动类生成至少一个启动服务,并根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库。由此,可以使得多个租户的定时任务各自独立、相互隔离,服务于对应租户的同时而不对其他租户产生干扰,解决了相关技术中数据隔离时,有几个租户就需要启动几个微服务,导致服务器资源的浪费的问题。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的一种多租户任务管理方法的流程图;
图2为根据本申请一个实施例的多租户任务管理时的部署的示例图;
图3为根据本申请实施例的多租户任务管理装置的示例图;
图4为申请实施例提供的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的多租户任务管理方法、装置、电子设备及存储介质。针对上述背景技术中心提到的相关技术中数据隔离时,有几个租户就需要启动几个微服务,导致服务器资源的浪费的问题,本申请提供了一种多租户任务管理方法,在该方法中,可以接收多个租户的任务请求,并检测每个租户的任务请求的任务类别,并在任务类别为实时任务时,由定时任务模块中与多个租户一一对应的启动类生成至少一个启动服务,并根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库。由此,可以使得多个租户的定时任务各自独立、相互隔离,服务于对应租户的同时而不对其他租户产生干扰,解决了相关技术中数据隔离时,有几个租户就需要启动几个微服务,导致服务器资源的浪费的问题。
具体而言,图1为本申请实施例所提供的一种多租户任务管理方法的流程示意图。
如图1所示,该多租户任务管理方法包括以下步骤:
在步骤S101中,接收多个租户的任务请求。
在步骤S102中,检测每个租户的任务请求的任务类别,并在任务类别为实时任务时,由定时任务模块中与多个租户一一对应的启动类生成至少一个启动服务。
其中,任务请求可以包括实时任务请求和非实时任务请求,任务类别可以分为实时任务和非实时任务。
具体地,本申请实施例可以接收多个租户发出的任务请求,并分析每个租户的任务请求类别,如果该租户的任务请求类别为实时任务,则可以通过从定时任务模块中与任务请求类别为实时任务的租户对应的启动类生成至少一个启动服务。
需要说明的是,如图2所示,本申请实施例可以在微服务中将定时任务相关代码从业务代码中剥离出来,作为一个独立模块(即定时任务模块),在定时任务模块中增加启动类。
在步骤S103中,根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库。
可选地,在一些实施例中,根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库,包括:获取实时任务对应的至少一个目标隔离数据库的启动参数;获取与每个租户的身份识别信息对应的至少一个目标隔离数据库;根据实时任务与每个租户之间的对应关系确定实时任务对应的至少一个目标隔离数据库;根据启动参数启动实时任务对应的至少一个目标隔离数据库。
应当理解的是,在项目部署时,上述定时任务模块可以作为一个服务启动,每一个租户启动一个服务,并在启动时指定启动参数,告知服务属于哪个租户(即服务对应的目标隔离数据库是哪个)。
举例而言,如图2所示,多个租户分别为租户1、租户2、租户3、……,则租户1的启动服务可以为定时任务模块中的Micro Service1,并对应目标隔离数据库中的租户1,租户2的启动服务可以为定时任务模块中的Micro Service2,并对应目标隔离数据库中的租户2;租户3的启动服务可以为定时任务模块中的Micro Service3,并对应目标隔离数据库中的租户3,……。
可选地,在一些实施例中,还包括:在任务类别为非实时任务时,基于业务模块中唯一启动类生成业务服务,以通过业务服务处理非实时任务。
应当理解的是,除了定时任务,其他业务服务是不需要隔离,因此,如果当前任务类别为非实时任务,则可以通过业务模块中唯一启动类生成业务服务(如图2所示的MicroService 0),从而实现对非实时任务的处理。
可选地,在一些实施例中,定时任务模块与业务模块相互独立设置。
也就是说,本申请实施例的实时任务模块与业务模块相互独立设置,在项目相关服务启动完成后,业务代码是共享的,即多个租户对应一个业务服务(通过业务模块实现),但定时任务服务是隔离的,一个租户对应一个定时任务服务(通过定时任务模块完成)。
由此,通过采用多租户间数据隔离、业务代码共享、定时任务代码隔离的方式使得多租户在不借助外部框架(如Spring Quartz)的情况下,实现定时任务的管理。
根据本申请实施例提出的多租户任务管理方法,可以接收多个租户的任务请求,并检测每个租户的任务请求的任务类别,并在任务类别为实时任务时,由定时任务模块中与多个租户一一对应的启动类生成至少一个启动服务,并根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库。由此,可以使得多个租户的定时任务各自独立、相互隔离,服务于对应租户的同时而不对其他租户产生干扰,解决了相关技术中数据隔离时,有几个租户就需要启动几个微服务,导致服务器资源的浪费的问题。
其次参照附图描述根据本申请实施例提出的多租户任务管理装置。
图3是本申请实施例的多租户任务管理装置的方框示意图。
如图3所示,该多租户任务管理装置10包括:接收模块100、第一生成模块200和启动模块300。
其中,接收模块100用于接收多个租户的任务请求;
第一生成模块200用于检测每个租户的任务请求的任务类别,并在任务类别为实时任务时,由定时任务模块中与多个租户一一对应的启动类生成至少一个启动服务;以及
启动模块300用于根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库。
可选地,启动模块300具体用于:
获取实时任务对应的至少一个目标隔离数据库的启动参数;
获取与每个租户的身份识别信息对应的至少一个目标隔离数据库;
根据实时任务与每个租户之间的对应关系确定实时任务对应的至少一个目标隔离数据库;
根据启动参数启动实时任务对应的至少一个目标隔离数据库。
可选地,还包括:
第二生成模块,用于在任务类别为非实时任务时,基于业务模块中唯一启动类生成业务服务,以通过业务服务处理非实时任务。
可选地,其中,定时任务模块与业务模块相互独立设置。
需要说明的是,前述对多租户任务管理方法实施例的解释说明也适用于该实施例的多租户任务管理装置,此处不再赘述。
根据本申请实施例提出的多租户任务管理装置,可以接收多个租户的任务请求,并检测每个租户的任务请求的任务类别,并在任务类别为实时任务时,由定时任务模块中与多个租户一一对应的启动类生成至少一个启动服务,并根据至少一个启动服务启动实时任务对应的至少一个目标隔离数据库。由此,可以使得多个租户的定时任务各自独立、相互隔离,服务于对应租户的同时而不对其他租户产生干扰,解决了相关技术中数据隔离时,有几个租户就需要启动几个微服务,导致服务器资源的浪费的问题。
图4为本申请实施例提供的电子设备的结构示意图。该电子设备可以包括:
存储器401、处理器402及存储在存储器401上并可在处理器402上运行的计算机程序。
处理器402执行程序时实现上述实施例中提供的多租户任务管理方法。
进一步地,电子设备还包括:
通信接口403,用于存储器401和处理器402之间的通信。
存储器401,用于存放可在处理器402上运行的计算机程序。
存储器401可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
如果存储器401、处理器402和通信接口403独立实现,则通信接口403、存储器401和处理器402可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器401、处理器402及通信接口403,集成在一块芯片上实现,则存储器401、处理器402及通信接口403可以通过内部接口完成相互间的通信。
处理器402可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上的多租户任务管理方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,N个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

Claims (10)

1.一种多租户任务管理方法,其特征在于,包括以下步骤:
接收多个租户的任务请求;
检测每个租户的任务请求的任务类别,并在所述任务类别为实时任务时,由定时任务模块中与所述多个租户一一对应的启动类生成至少一个启动服务;以及
根据所述至少一个启动服务启动所述实时任务对应的至少一个目标隔离数据库。
2.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个启动服务启动实时任务对应的至少一个目标隔离数据库,包括:
获取所述实时任务对应的至少一个目标隔离数据库的启动参数;
获取与所述每个租户的身份识别信息对应的至少一个目标隔离数据库;
根据所述实时任务与所述每个租户之间的对应关系确定所述实时任务对应的至少一个目标隔离数据库;
根据所述启动参数启动所述实时任务对应的至少一个目标隔离数据库。
3.根据权利要求1所述的方法,其特征在于,还包括:
在所述任务类别为非实时任务时,基于业务模块中唯一启动类生成业务服务,以通过所述业务服务处理所述非实时任务。
4.根据权利要求1-3任一项所述的方法,其特征在于,其中,所述定时任务模块与所述业务模块相互独立设置。
5.一种多租户任务管理装置,其特征在于,包括:
接收模块,用于接收多个租户的任务请求;
第一生成模块,用于检测每个租户的任务请求的任务类别,并在所述任务类别为实时任务时,由定时任务模块中与所述多个租户一一对应的启动类生成至少一个启动服务;以及
启动模块,用于根据所述至少一个启动服务启动所述实时任务对应的至少一个目标隔离数据库。
6.根据权利要求5所述的装置,其特征在于,所述启动模块,具体用于:
获取所述实时任务对应的至少一个目标隔离数据库的启动参数;
获取与所述每个租户的身份识别信息对应的至少一个目标隔离数据库;
根据所述实时任务与所述每个租户之间的对应关系确定所述实时任务对应的至少一个目标隔离数据库;
根据所述启动参数启动所述实时任务对应的至少一个目标隔离数据库。
7.根据权利要求5所述的装置,其特征在于,还包括:
第二生成模块,用于在所述任务类别为非实时任务时,基于业务模块中唯一启动类生成业务服务,以通过所述业务服务处理所述非实时任务。
8.根据权利要求5-7任一项所述的装置,其特征在于,其中,所述定时任务模块与所述业务模块相互独立设置。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-4任一项所述的多租户任务管理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-4任一项所述的多租户任务管理方法。
CN202111266008.9A 2021-10-28 2021-10-28 多租户任务管理方法、装置、电子设备及存储介质 Pending CN114003360A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111266008.9A CN114003360A (zh) 2021-10-28 2021-10-28 多租户任务管理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111266008.9A CN114003360A (zh) 2021-10-28 2021-10-28 多租户任务管理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN114003360A true CN114003360A (zh) 2022-02-01

Family

ID=79924831

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111266008.9A Pending CN114003360A (zh) 2021-10-28 2021-10-28 多租户任务管理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114003360A (zh)

Similar Documents

Publication Publication Date Title
EP3291499B1 (en) Method and apparatus for network service capacity expansion
CN107968836B (zh) 一种任务分发方法及装置
JP6614340B2 (ja) ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム
US20190158626A1 (en) Method, apparatus and computer readable storage medium for processing service
CN108255707B (zh) 测试用例的开发角色创建方法、装置、设备及存储介质
CN107251486B (zh) 一种扩展联动的方法、装置及系统
CN107769932B (zh) 一种计费方法、装置及系统
CN111596927B (zh) 服务部署方法、装置及电子设备
CA3129986A1 (en) Network testing method and device
CN111506388B (zh) 容器性能探测方法、容器管理平台及计算机存储介质
CN111209060A (zh) 能力开发平台处理方法及装置
CN113360386A (zh) 交换芯片驱动测试方法、装置、电子设备和存储介质
CN107025126B (zh) 一种资源调度方法、nfvo和系统
CN114003360A (zh) 多租户任务管理方法、装置、电子设备及存储介质
CN111756599A (zh) 一种业务监控方法及装置
CN114979286B (zh) 容器服务的访问控制方法、装置、设备及计算机存储介质
CN112286622A (zh) 虚机迁移处理及策略生成方法、装置、设备及存储介质
CN111030874B (zh) 业务编排方法、设备、存储介质及装置
CN111176799A (zh) 一种业务调度方法、设备和存储介质
CN113204434B (zh) 基于k8s的计划任务执行方法、装置及计算机设备
CN111444008B (zh) 集群间服务迁移方法及装置
CN114884886B (zh) 微服务负载均衡方法、装置、设备、系统及存储介质
CN114070855B (zh) 资源分配方法、资源分配装置、资源分配系统、存储介质
CN111581203B (zh) 信息处理方法、装置及存储介质
CN117061996A (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