CN115202712A - 应用管理方法、应用订阅方法及相关设备 - Google Patents
应用管理方法、应用订阅方法及相关设备 Download PDFInfo
- Publication number
- CN115202712A CN115202712A CN202210760285.3A CN202210760285A CN115202712A CN 115202712 A CN115202712 A CN 115202712A CN 202210760285 A CN202210760285 A CN 202210760285A CN 115202712 A CN115202712 A CN 115202712A
- Authority
- CN
- China
- Prior art keywords
- application
- information
- data model
- program
- program entity
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000007726 management method Methods 0.000 title claims abstract description 45
- 238000013499 data model Methods 0.000 claims abstract description 168
- 230000006870 function Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 31
- 238000012423 maintenance Methods 0.000 description 32
- 238000010586 diagram Methods 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 101150053844 APP1 gene Proteins 0.000 description 5
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 5
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 5
- 101100055496 Arabidopsis thaliana APP2 gene Proteins 0.000 description 3
- 101100016250 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GYL1 gene Proteins 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000002131 composite material Substances 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本申请关于一种应用管理方法、应用订阅方法及相关设备,涉及软件技术领域。本申请中,获取第一应用的数据模型,第一应用的数据模型包括用于实现第一应用的功能的程序代码;根据第一应用的数据模型,生成第一应用对应的程序实体。本申请可通过将应用的数据模型或程序代码对象化,得到应用的程序实体,并基于应用的程序实体实现对应用的全生命周期的开发、运行的管理。
Description
技术领域
本申请涉及软件技术领域,尤其涉及一种应用管理方法、应用订阅方法及相关设备。
背景技术
应用程序(application,APP)的生命周期管理(application lifecyclemanagement,ALM)是指一个应用程序从需求收集、编程、测试一直到发布全程的管理。
App的开发需要通过编写代码来实现功能。同时,在APP的开发过程中,需要不断的对APP的代码进行调试和开发,直至APP的功能能够实现。这些过程是源码级别的管理,通常可以通过TFS、Git、GitHub等代码版本管理工具对APP进行管理。但是,管理权限也是控制到文件和目录级别,无法再更深层次的对APP进行管理。
当然,开发者也可以通过搭建集成平台实现对APP进行管理。但是,通过集成平台仅能实现对APP的源代码进行管理,不适合作为APP的生命周期进行管理。
发明内容
本申请提供一种应用管理方法、应用订阅方法及相关设备,可以实现对APP的生命周期进行管理。
本申请的技术方案如下:
第一方面,本申请提供一种应用管理方法,该方法包括:获取第一应用的数据模型,第一应用的数据模型包括用于实现第一应用的功能的程序代码;根据第一应用的数据模型,生成第一应用对应的程序实体。
一些实现方式中,数据模型包括属性,第一应用的属性包括第一应用的名称和版本信息中的至少一个。
一些实现方式中,第一应用的属性还包括第一应用的数据模型的标识,其中,数据模型的标识具有唯一性。
一些实现方式中,第一应用的属性还包括第一应用对应的部署节点和第一应用对应的运行资源中的至少一个。
一些实现方式中,上述“根据第一应用的数据模型,生成第一应用对应的程序实体”的方法具体包括:根据第一应用的数据模型,确定第一应用的配置信息,第一应用的配置信息用于指示第一应用的数据模型的属性的配置值;根据第一应用的配置信息,创建第一应用的程序实体。
一些实现方式中,第一应用的数据模型还用于指示第一应用的功能。
一些实现方式中,该方法还包括:确定第一应用对应的运行资源,并在第一应用对应的运行资源上运行第一应用对应的程序实体。
第二方面,本申请提供一种应用管理装置,该装置可以实现如第一方面及第一方面的任意一种可能的实现方式所述的应用管理方法。该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与第一方面及第一方面的任意一种可能的实现方式所述的应用管理方法中的步骤相对应的模块或单元。
例如,所述装置包括:获取模块,用于获取第一应用的数据模型,第一应用的数据模型包括用于实现第一应用的功能的程序代码;生成模块,用于根据第一应用的数据模型,生成第一应用对应的程序实体。
一些实现方式中,数据模型包括属性,第一应用的属性包括第一应用的名称和版本信息中的至少一个。
一些实现方式中,第一应用的属性还包括第一应用的数据模型的标识,其中,数据模型的标识具有唯一性。
一些实现方式中,第一应用的属性还包括第一应用对应的部署节点和第一应用对应的运行资源中的至少一个。
一些实现方式中,生成模块具体用于:根据第一应用的数据模型,确定第一应用的配置信息,第一应用的配置信息用于指示第一应用的数据模型的属性的配置值;根据第一应用的配置信息,创建第一应用的程序实体。
一些实现方式中,第一应用的数据模型还用于指示第一应用的功能。
一些实现方式中,该装置还包括确定模块,用于确定第一应用对应的运行资源,并在第一应用对应的运行资源上运行第一应用对应的程序实体。
第三方面,本申请提供一种电子设备,如电子设备可以是上述第一方面中所述的应用商店对应的硬件设备。电子设备包括:处理器,用于存储处理器可执行指令的存储器;处理器被配置为执行所述指令时,使得电子设备实现如第一方面及第一方面的任意一种可能的实现方式所述的方法。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序指令;当所述计算机程序指令被电子设备执行时,使得电子设备实现如第一方面及第一方面的任意一种可能的实现方式所述的方法。
第五方面,本申请提供一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器实现如第一方面及第一方面的任意一种可能的实现方式所述的方法。
第六方面,本申请提供了一种应用订阅方法,该方法包括:获取第一应用的数据模型,第一应用的数据模型包括用于实现第一应用的功能的程序代码;根据第一应用的数据模型,生成第一应用对应的程序实体;接收用于订阅第一应用的信息的订阅信息;发送与第一应用对应的程序实体的运行状态相关的第一指示信息。
一些实现方式中,上述“根据第一应用的数据模型,生成第一应用对应的程序实体”的方法具体包括:根据第一应用的数据模型,确定第一应用的配置信息,第一应用的配置信息用于指示第一应用的数据模型的属性的配置值;根据第一应用的配置信息,创建第一应用的程序实体。
一些实现方式中,第一指示信息包括第一应用对应的程序实体的状态;其中,程序实体的状态包括程序实体的创建状态、运行状态和终止状态中的任一种状态。
一些实现方式中,订阅信息还用于订阅与第一应用相关的预设事件以及第一应用的属性的变更信息。
一些实现方式中,该方法还包括:当第一应用对应的程序实体的状态变更时,发送第一通知信息,第一通知信息用于通知第一应用对应的程序实体的状态发生变更。
一些实现方式中,该方法还包括:接收查询信息,查询信息用于查询所述第一应用的信息,第一应用的信息包括第一应用的第一属性的信息和第二属性的信息;发送查询结果,查询结果用于指示第一应用的信息。
一些实现方式中,第一属性的信息至少包括:第一应用的数据模型的标识信息;第二属性的信息至少包括:第一应用的属性的名称和第一应用的属性的标识信息。
一些实现方式中,上述“查询第一应用的程序实体”的方法具体包括:根据第一应用的数据模型的标识信息,查找第一应用的程序实体;统计所述第一应用的程序实体的数量。
一些实现方式中,上述“查询第一应用的程序实体”的方法具体包括:根据第一应用的数据模型的标识信息,查找第一应用的程序实体的状态。
一些实现方式中,上述“查询第一应用的程序实体”的方法具体包括:根据第一应用的配置信息指示的数据模型的标识信息,查找第一应用的程序实体的状态。
第七方面,本申请提供一种应用订阅装置,该装置可以用于实现如第六方面及第六方面的任意一种可能的实现方式所述的应用订阅方法。该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与第六方面及第六方面的任意一种可能的实现方式所述的应用订阅方法中的步骤相对应的模块或单元。
例如,所述装置包括:获取模块,用于获取第一应用的数据模型,第一应用的数据模型包括用于实现第一应用的功能的程序代码;生成模块,用于根据第一应用的数据模型,生成第一应用对应的程序实体;接收模块,用于接收用于订阅第一应用的信息的订阅信息;发送模块,用于发送与第一应用对应的程序实体的运行状态相关的第一指示信息。
一些实现方式中,生成模块,具体用于:根据第一应用的数据模型,确定第一应用的配置信息,第一应用的配置信息用于指示第一应用的数据模型的属性的配置值;根据第一应用的配置信息,创建第一应用的程序实体。
一些实现方式中,第一指示信息包括第一应用对应的程序实体的状态;其中,程序实体的状态包括程序实体的创建状态、运行状态和终止状态中的任一种状态。
一些实现方式中,订阅信息还用于订阅与第一应用相关的预设事件以及第一应用的属性的变更信息。
一些实现方式中,发送模块,还用于:当第一应用对应的程序实体的状态变更时,发送第一通知信息,第一通知信息用于通知第一应用对应的程序实体的状态发生变更。
一些实现方式中,接收模块,还用于接收查询信息,查询信息用于查询所述第一应用的信息,第一应用的信息包括第一应用的第一属性的信息和第二属性的信息;发送模块,还用于发送查询结果,查询结果用于指示第一应用的信息。
一些实现方式中,第一属性的信息至少包括:第一应用的数据模型的标识信息;第二属性的信息至少包括:第一应用的属性的名称和第一应用的属性的标识信息。
一些实现方式中,该装置还包括查询模块,用于根据第一应用的数据模型的标识信息,查找第一应用的程序实体;统计所述第一应用的程序实体的数量。
一些实现方式中,查询模块,具体用于根据第一应用的数据模型的标识信息,查找第一应用的程序实体的状态。
一些实现方式中,查询模块,具体用于根据第一应用的配置信息指示的数据模型的标识信息,查找第一应用的程序实体的状态。
第八方面,本申请提供一种电子设备,如电子设备可以是上述第一方面中所述的应用商店对应的硬件设备。电子设备包括:处理器,用于存储处理器可执行指令的存储器;处理器被配置为执行所述指令时,使得电子设备实现如第六方面及第六方面的任意一种可能的实现方式所述的方法。
第九方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序指令;当所述计算机程序指令被电子设备执行时,使得电子设备实现如第六方面及第六方面的任意一种可能的实现方式所述的方法。
第十方面,本申请提供一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器实现如第六方面及第六方面的任意一种可能的实现方式所述的方法。
基于上述第一方面至第十方面中的任一方面,本申请至少具备如下有益效果:
本申请中,通过将应用的数据模型或程序代码对象化,得到应用的程序实体。由于应用的程序实体可以用于描述运行起来的程序代码,例如,可以描述程序代码运行的状态。进而,基于应用的程序实体可以实现对应用的程序的运行过程进行管理。也即,实现了对应用的全生命周期的开发、运行的管理。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
图1为本申请实施例提供的一种应用管理方法的流程示意图;
图2为本申请实施例提供的数据模型的类型的示意图;
图3为本申请实施例提供的一种应用订阅方法的流程示意图;
图4为本申请实施例提供的另一种应用订阅方法的流程示意图;
图5为本申请实施例提供的一种应用管理方法的流程示意图;
图6为本申请实施例提供的一种数据模型和预定义的结构示意图;
图7为本申请实施例提供的一种数据模型的结构示意图;
图8为本申请实施例提供的一种应用管理装置的结构示意图;
图9为本申请实施例提供的一种应用订阅装置的结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
还应当理解的是,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其他特征、整体、步骤、操作、元素和/或组件的存在或添加。
“和/或”用于描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
App的开发需要通过编写代码来实现功能。通常可以通过TFS、Git、GitHub等代码版本管理工具,基于应用程序的文件和目录对应用程序进行管理。但是,管理权限也是控制到文件和目录级别,无法再更深层次的对应用进行管理。
另外,在APP的开发过程中,需要不断的调试调整,然后再开发、再调试,直至应用程序的功能正常后,再部署运行。这些过程是源码级别的管理,可以基于集成开发工具实现。集成开发工具可以包括开源的Jenkins、DevOps平台等。
随着APP的功能越来越复杂,通常都是有多个基础的APP来集成来完成某些复杂的系统功能,现在通常是通过代码级集成的方式来实现一个复杂的APP的功能。例如,可以通过团队基础服务器(team foundation server,TFS)、Git、GitHub等代码版本管理工具,实现对APP的文件和目录的管理。管理权限为控制到APP的文件和目录级别。但这种管理方式封装性较差,基于代码的复用或交易的时候保密性较差,而基于二进制的复用和校验不便于修改,使用者需要进行兼容处理。不具有方便集成其他组织app的机制,只能在组织内部进行迭代,无法快速的丰富工业app形成生态。
另外,Jenkins需要使用开发者自己选择或者开发相关工具来搭建持续集成平台,不具有通用性,搭建成本较高。商业的DevOps平台适合特定的几种语言的源代码的开发,管理的目标是源代码,而不是app,不适合作为app的全生命周期的管理。
鉴于此,本申请实施例提供了一种应用管理方法,
基于此,本申请实施例提供了一种应用管理方法,通过该方法可以将APP的源代码、配置信息、二进制程序对象化,从而实现了对APP的全生命周期的管理。
示例性地,该方法具体可以在运维系统或者运维系统中的一个模块(如运行控制模块),或者运维系统对应的硬件设备上实现,如:硬件设备可以包括服务器或服务器中的硬件设备、计算机或计算机的硬件设备等。其中,服务器可以是单独的一个服务器,或者,也可以是由多个服务器构成的服务器集群。部分实施方式中,服务器集群还可以是分布式集群。本申请对运维系统对应的硬件设备的具体实现方式不作限制。本申请实施例以执行主体为运行系统为例进行说明。
需要说明的是,本申请实施例中涉及到的运维系统侧实现步骤,均可以是由运维系统对应的硬件设备来实现。
图1为本申请实施例提供的应用管理方法的流程示意图。如图1所示,该应用管理方法可以包括:
S101、获取第一应用的数据模型。
其中,第一应用的数据模型可以用于是指第一应用的功能。例如,第一应用的数据模型可以包括第一应用的程序代码。第一应用的程序代码可以用于实现第一应用的功能。
其中,第一应用的数据模型还可以包括属性。第一应用的属性可以用于描述第一应用的信息。
例如,第一应用的属性可以包括第一应用的名称和版本信息中的至少一个。当然,第一应用的属性还可以包括其他参数,比如,还可以包括第一应用的数据模型的标识、类型等。数据模型的标识用于唯一标识该数据模型。数据模型的标识可以为全局唯一标识符(globally unique identifier,GUID)。第一应用的数据模型的标识可以在生成第一应用的数据模型时确定(比如,可以为用户自定义的),且在第一应用的生命周期内第一应用的数据模型保持不变。
又例如,第一应用的属性还可以包括第一应用的部署节点和第一应用的运行资源中的至少一个。
进一步的,如图2所示,数据模型的类型可以包括C++数据模型、Nodejs数据模型、Java数据模型等。
其中,不同类型的数据模型的配置信息均可以guid、名称、版本号、语言类别、程序集、自预定义列表、配置项列表。下面分别对这些配置信息进行说明:
1、guid可以为开发系统生成,全局唯一。名称可以由用户自定义。
2、版本号可由为开发系统管理,连续的版本号可以为单调递增的。
3、语言类别可以是指程序代码是由的编程语言。比如,C++数据模型的语言类型为C++,Nodejs数据模型的语言类型为Nodejs,Java数据模型的语言类型为Java。
4、程序集,也即程序代码,可以包括命令行、源码、二进制等。
其中,命令行是指应用加载运行时要执行的命令行,例如,启动的程序名称、要传入的命令参数、注册命令等。
源码可以是指源代码和使用的资源文件(可以为空)。其他使用者可以购买原来授权来查看和使用源代码。源代码可以包括C++源代码、Nodejs的JavaScript源代码、Java源代码等。
运行二进制可以包括二进制程序包。由于C++不是跨平台的,因此C++数据模型的程序集的二进制是针对平台的。例如,平台可以包括通用linux平台、通用windows平台、安卓(android)、Mac等。Java数据模型的程序集中的运行二进制是跨平台的,只需要存储一份class文件或jar包。
5、自预定义列表可以是由数据模型生成的预定义,不限语言类别。
6、配置项列表可以被定义的配置项(key-value)列表。
需要说明的是,上述类型的数据模型仅为示例性的,还可以包括其他类型的数据模型。
一种可能的实现方式中,开发系统可以通过与第一应用的开发工作室对于的设备进行交互,获取到第一应用的数据模型。比如,第一应用的开发工作室可以响应于上传操作,向开发系统发送第一应用的数据模型。
S102、根据第一应用的数据模型,生成第一应用对应的程序实体。
其中,第一应用对应的程序实体也可以称为应用(运行)对象,可以是指实际运行的程序,或者,也可以用于描述实际运行的程序。例如,可以描述应用的部署节点、运行状态、运行资源(如中央处理器(Central Processing Unit,CPU)、内存)等信息。
一种可能的实现方式中,运维系统可以根据第一应用的数据模型,确定第一应用的配置信息,并根据第一应用的配置信息,创建第一应用对应的程序实体。
其中,第一应用的配置信息是指第一应用的数据模型的属性信息。例如,第一应用的配置信息可以包括第一应用的名称、第一应用的标识(guid)、第一应用的数据模型的标识(guid)和版本号、第一应用的属性的配置值中的一个或多个。
进一步的,第一应用的配置信息还可以包括第一应用的部署节点、第一应用的运行资源等。如此,管理系统可以根据第一应用的配置信息,确定第一应用对应的运行资源。
本申请实施例中,通过将应用的数据模型或程序代码对象化,得到应用的程序实体。由于应用的程序实体可以用于描述运行起来的程序代码,例如,可以描述程序代码的部署节点、状态、运行资源等。进而,基于应用的程序实体可以实现对应用的程序代码、部署节点和运行资源进行管理。也即,实现了应用的全生命周期的开发、运行的管理。
一种可能的实施例中,本申请实施例提供的方法,还可以包括:确定第一应用的运行资源,并在第一应用的运行资源上运行第一应用对应的程序实体。
其中,第一应用的运行资源可以包括第一应用运行时配置的CPU、内存等。
一种可能的实现方式中,运维系统可以从第一应用的配置信息中获取到第一应用对应的运行节点以及运行资源。然后,运维系统可以向该运行节点发送运行指示信息,以使得该运行节点使用该运行资源运行第一应用对应的程序实体。
其中,运行指示信息可以用于指示运行节点运行第一应用及运行第一应用时所需的运行资源。如此,运行节点可以根据运行指示信息为第一应用分配对应的运行资源,并在使用运行资源运行第一应用的程序实体。
进一步的,当第一应用的程序实体的运行结果为正常(比如,可以实现第一应用的功能)时,可以将第一应用的数据模型上传至目标节点(如应用商店)。如此,可以使得第一应用可以被其他用户使用和继续开发。
基于该可能的实施例,运维系统可以在确定第一应用的运行资源之后,在第一应用的运行资源上部署第一应用的程序实体。从而实现了对应用的生命周期中的部署的管理。
一种可能的实施例中,为了便于用户可以及时的获取到运维系统中应用的相关信息,本申请实施例还提供了一种应用订阅方法,如图3所示,该方法可以包括S301~S304。
S301、获取第一应用的数据模型。
S302、根据第一应用的数据模型,生成第一应用对应的程序实体。
其中,S301和S302可以参照上述S101和S102的描述,不予赘述。
S303、接收订阅信息。
其中,订阅信息用于订阅第一应用的信息。例如,订阅信息可以包括订阅用户的信息、第一应用的标识等。订阅用户的信息可以包括订阅用户的账户、使用设备的标识等。第一应用的信息可以包括第一应用对应的程序实体的状态,也可以包括第一应用的属性的信息、配置信息等。
一种示例中,程序实体的状态可以包括程序实体的创建状态、运行状态和终止状态中的任一种。
一种可能的实现方式中,订阅用户可以通过使用的设备向运行系统发送订阅信息。相应的,运行系统可以接收订阅信息。
进一步的,订阅信息还可以用于订阅与第一应用相关的预设事件以及第一应用的变更信息。
其中,预设事件可以包括增加事件、修改事件、删除事件等。例如,增加事件可以是指第一应用的配置信息增加了新的配置项。修改事件可以是指第一应用的配置信息中的配置项进行了修改。删除事件可以是指第一应用的配置信息中的配置项被删除。
其中,第一应用的变更信息可以第一应用的属性的变更信息、与第一应用相关的第二应用的属性的变更信息等。
S304、发送第一指示信息。
其中,第一指示信息与第一应用的程序实体的运行状态相关。例如,第一指示信息可以包括第一应用对应的程序实体的状态。程序实体的状态可以包括程序实体的创建状态、运行状态和终止状态。又例如,第一指示信息可以用于指示第一应用的程序实体的状态是否异常。
一种示例中,当第一指示信息用于指示第一应用的程序实体的状态是否异常时,第一指示信息可以包括第一标识。第一标识可以用于指示第一应用的程序实体的状态是否正常。第一标识可以为数字或字符或数字与字符的组合。比如,当第一标识为第一指示符时,说明第一应用的程序实体的状态正常;当第一标识为第二指示符时,说明第一应用的程序实体的状态异常。第一指示符和第二指示符不同。
例如,当第一应用的程序实体的运行状态异常时,第一指示信息可以还包括第一应用的程序实体的运行状态异常的信息(如,异常原因、异常代码、发生时间等)。
一种可能的实现方式中,当运维系统接收到订阅信息之后,可以根据订阅信息中的第一应用的标识,监测第一应用的状态,并将检测到的第一应用的状态发送给订阅用户使用的设备。比如,运维系统可以周期的性检测第一应用的状态。如此,运维系统可以及时快速的将订阅用户所需的信息发送给订阅用户。
进一步的,当第一应用还能够调用第二应用以实现第二应用的功能时,第一指示信息还可以用于指示第二应用的状态。也即,第一指示信息可以用于指示第一应用的状态及第二应用的状态。比如,第一指示信息可以包括第一应用的状态和/或第二应用的状态。
基于上述S301~S304,运维系统可以在根据应用的数据模型生成第一应用的程序实体之后,可以响应于用户的订阅信息,向用户发送与应用的程序实体的运行状态相关的信息。从而实现了对应用的访问管理。
一种可能的实施例中,当运维系统接收到用户的订阅第一应用的信息之后,该方法还可以包括:当检测到第一应用对应的程序实体的状态变更时,发送第一通知信息。
其中,第一通知信息可以用于通知第一应用对应的程序实体的状态发生变更。例如,第一通知信息可以包括第二标识。第二标识可以用于标识第一应用对应的程序实体的状态发生变更。又例如,第一通知信息可以包括变更后的第一应用对应的程序实体的状态。比如,当第一应用对应的程序实体从运行状态变更为终止运行时,第一通知信息可以包括第一状态信息。第一状态信息可以表示第一应用对应的程序实体终止运行。如第一状态信息可以包括APP1-END。APP1表示第一应用对应的程序实体,END表示终止运行。
基于该实施例,当检测到第一应用对应的程序实体的状态变更时,可以向订阅用户发送通知信息,以使得订阅用户可以及时的了解到订阅的应用的状态发生变更。实现了对应用的状态的管理。
进一步的,为了便于用户查询与第一应用的相关信息,如图4所示,本申请实施例提供的方法,还可以包括:
S401、接收查询信息。
其中,查询信息可以用于查询第一应用的信息。例如,第一应用的信息可以包括第一应用的第一属性的信息和第二属性的信息。例如,第一属性的信息至少可以包括第一应用的数据模型的标识信息。第二属性的信息至少可以包括第一应用的属性的名称、第一应用的属性的标识信息。
一种示例中,查询信息可以包括第一应用的标识或第一应用的数据模型的标识或第一应用的配置信息的标识。基于该标识,运维系统可以查找第一应用的信息。
一种可能的实现方式中,用户(可以为订阅用户,也可以不是订阅用户)可以通过使用的设备向运维系统发送查询信息。响应的,运维系统可以接收到来自订阅用户的查询信息,并查询第一应用的信息。
具体的,运维信息可以通过下述方式查询第一应用的信息。
方式一、运维系统可以根据第一应用的数据模型的标识信息,查找第一应用的程序实体,并统计第一应用的程序实体的数量。
方式二、运维系统可以根据第一应用的数据模型的标识信息,查找第一应用的程序实体的状态。
方式三、运维系统可以根据第一应用的配置信息指示的数据模型的标识信息,查询第一应用的程序实体的状态。
S402、发送查询结果。
其中,查询结果用于指示第一应用的信息。例如,查询结果可以包括第一应用的第一属性的信息和第二属性的信息。
基于图4所示的技术方案,开发系统在接收到查询信息后,可以根据查询信息,确定应用的相关信息。进而,将应用的相关信息发送给对应的用户。满足了用户的个性化需求的同时,也实现了对应的查询管理。
上述实施例是从单一应用的维度对应用的全生命周期的管理方法进行了描述,下面从多个具有关联关系的应用的全生命周期进行说明。
需要说明的是,多个具有关联关系的应用可以是指具有父子关系的多个应用。例如,多个具有关联关系的应用包括第一应用和第二应用,第二应用可以为第一应用的父应用。也即,第二应用可以调用第一应用以实现第一应用的功能。
一种示例中,如图5所示,本申请实施例提供了一种运维系统,包括应用仓库、运行控制设备以及多个开发工作室中的设备。应用仓库分别与多个开发工作室中的设备、运行控制设备通信连接。
其中,应用仓库可以用于存储应用的预定义(也可以称为APP预定义)。当应用仓库接收到来自用户的访问请求时,可以对用户的权限进行验证(如验证用户的账号和对应的密码和存储的账户和密码是否一致)。当用户具有访问权限(用户的账号和对应的密码和存储的账户和密码一致)时,应用仓库可以允许用户访问应用仓库中存储的应用的预定义。
在实际应用中,应用仓库可以为服务器。该服务器可以具有多个接口,该多个接口可以用于与开发工作室中的设备进行信息的交互。
其中,开发工作室是指开发人员开发应用的场所。也即,开发人员可以使用开发工作室中的设备(如计算机、电脑等)开发应用及应用的数据模型。响应于上传操作,开发工作室中的设备还可以根据应用的数据模型创建应用的预定义,并将应用的预定义上传至应用仓库。
其中,运行控制设备可以用于控制应用的预定义的创建、运行和终止运行。例如,运行控制设备将应用的预定义发送给目标节点,以使得目标节点可以运行部署应用。当应用具有子应用时,目标节点还可以运行子应用。
在实际应用中,运行控制设备可以为服务器、计算机等。本申请实施例对该运行控制设备的具体形态不作特殊限制。其可以与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互。
基于上述应用运维系统,如图5所示,本申请实施例提供的方法可以包括S501~S505。
S501、响应于上传操作,第一设备向应用仓库上传APP1对应的APP预定义1。相应的,应用仓库接收并存储来自开发工作室的设备的APP预定义1。
其中,第一设备可以是指第一应用对应的开发工作室中的设备。开发人员可以通过开发室的设备开发应用的数据模型设备。应用仓库可以用于存储上传的APP预定义。应用的预定义可以是对应用的数据模型的属性的一组具体配置值。具体的,可以参照下面的描述,此处不予赘述。
一种示例中,开发人员可以在开发工作室上完成APP数据模型1的开发,并通过开发工作室的设备向应用仓库上传第二应用的预定义。
其中,第一应用的配置项列表可以用于存储第一应用的代码文件、脚本文件、程序文件等。该配置项列表的内容可以以键值(key-value)的形式进行存储。配置项列表还可以响应于用户的配置操作,对列表中内容的key-value进行修改。
需要说明的是,开发者将开发好的app存储至应用仓库之后,其他开发者可以从应用仓库获取开发好的app,并将获取到的app作为零件使用,用以组装成一个新的app。
S502、应用仓库接收来自第二设备的第一请求信息。
其中,第二设备可以是指开发第二应用的开发工作室中的设备。第一请求信息用于请求获取APP预定义1。
S503、应用仓库向第二设备发送APP预定义1。相应的,第二设备接收来自应用仓库的APP预定义1。
S504、基于APP预定义1,第二设备构建APP数据模型2。
一种示例中,第二设备可以将第一应用的预定义作为第二应用的子预定义,进而,第二设备可以将第一应用的数据模型作为第二应用的数据模型的子模型,构建第二应用的数据模型。
S505、第二设备向应用仓库发送APP预定义2。相应的,应用仓库接收并存储来自第二设备的第二应用的预定义2。
其中,APP预定义2是根据APP数据模型2生成的。具体的,可以参照下述图6中预定义和数据模型之间的关联关系的描述,不予赘述。
S506、运行控制模块接收第一控制指令。
其中,第一控制指令可以用于指示部署运行第二应用。例如,第一控制指令可以包括第二应用的标识或第二应用的配置信息的标识。
一种示例中,第一控制指令可以为管理人员通过使用的设备向运行控制模块发送的指令,或者,可以是为应用仓库响应于管理人员的操作发送的指令。
进一步的,第一控制指令还可以用于指示运行第二应用的部署节点、运行资源等。例如,运行资源可以包括CPU、内存等。
S507、响应于第一控制指令,运行控制模块从应用仓库中获取APP预定义2。
S508、运行控制模块部署APP预定义2。
其中,运行控制模块可以根据APP预定义2创建APP对象2,并运行第APP对象2。由于APP2与APP1之间具有父子关系。因此,运行控制模块还可以根据APP预定义2的子预定义(APP预定义1)创建APP对象1,并在对应的运行资源上部署运行APP对象1。
一种示例中,当第一控制指令还用于指示运行APP对象2的部署节点时,运行控制模块可以向该节点发送APP预定义2,以使得该部署节点可以使用对应的运行资源运行APP预定义2。
需要说明的是,当APP预定义2运行时,可以控制APP预定义1的创建、运行及终止。例如,APP预定义2可以通过程序脚本,控制APP预定义1的创建、运行及终止。也即,APP对象2的功能逻辑可以启动和停止APP对象1。
一种示例中,如图5所示,运行控制模块在运行APP对象2时,可以通过数字孪生,生成APP2的程序文件(exe),以及通过数字孪生,生成APP1的程序文件(exe)。
其中,APP2的程序文件可以包括子预定义列表。APP1的程序文件可以包括配置项列表。该配置项列表可以待处理数据(也即,数据对象1)和数据处理结果(也即,数据对象2)。
基于图5所示的技术方案,通过应用仓库以及运行控制模块之间的交互,可以基于第一应用的生命周期的控制,实现控制与第一应用关联的第二应用的生命周期的控制。
本申请中提到了预定义的概念,预定义是对数据模型的属性的一组具体配置值。预定义上记录了数据模型的配置信息,预定义用来实例化对象,实例化对象是按照其模型的结构构建对象的结构,并把参数值作为对象的初始值。预定义也能被其他模型引用为子预定义。
例如,创建数据模型时,操作可以包括:新建模型,分配名字和标识;添加成员,指定成员类型;删除成员;添加或删除子预定义;设置子预定义的初值;更新模型版本;发布某模型版本生成预定义等。创建预定义时,操作可以包括:指定某模型版本发布(创建)预定义;分配名称和标识;设置预定义的参数值(属性和成员)等。
示例性地,图6为本申请实施例提供的数据模型和预定义的关系示意图。
如图6所示,数据模型可以包括基本属性和成员列表;基本属性可以包括名称、描述、GUID、版本等信息;成员列表可以包括:“成员1:名称+类型”、“成员2:名称+类型”、“成员3:名称+类型”等信息。
预定义可以包括基本属性和成员列表;基本属性可以包括名称、描述、GUID、模型GUID+版本等信息;成员列表可以包括:“成员1+值”、“成员2+值”、“成员3+值”等信息。
示例性地,图7为本申请实施例提供的数据模型的示意图。如图8所示,数据模型可以包括:基本属性、成员列表、以及子模型列表。具有子模型的数据模型是复合的数据模型,如:图中的数据模型A为复合的数据模型,数据模型B和数据模型C是数据模型A的子模型。
数据模型中,基本属性描述了数据的固有属性,包括名称、描述、GUID、时间属性(如精度)、空间属性(如坐标系、几何形状)等;成员列表描述了自由定义的字段,每个成员描述其字段名称、数据类型,如:成员1、成员2等。子模型列表中记录了引用为子模型的数据模型的数据预定义的标识,建立了子模型和数据模型之间的依赖关系,例如,数据模型A的子模型列表包括数据模型B和数据模型C的数据预定义的标识,如:“名称B1+引用模型ID+参数值”、“名称B2+引用模型ID+参数值”、“名称C3+引用模型ID+参数值”等。
例如,电机设备都具有转速、温度、电流等参数,建立电机设备的数据模型,电机设备的数据模型可以包括转速、温度、电流的成员,通过电机设备的数据模型可以对同类的电机统一描述。
又例如,假设压缩机车间内部都有定盘生产线、静盘生产线、总装生产线,建立压缩机车间的数据模型,压缩机车间的数据模型的内部可以包括子模型:定盘生产线、静盘生产线、总装生产线等。压缩机车间的数据模型可以描述同类的压缩机车间模型。
可以理解的,在实际实施时,本申请实施例所述的运维系统可以包含有用于实现前述对应的应用管理方法、应用订阅方法的一个或多个硬件结构和/或软件模块,这些执行硬件结构和/或软件模块可以构成一个电子设备。本领域技术人员应该很容易意识到,结合本文中所申请的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
基于这样的理解,以运维系统包含的硬件结构和/或软件模块为例,本申请实施例还对应提供一种应用管理装置,可以应用于上述运维系统(如运维系统对应的硬件设备)。图8为本申请实施例提供的应用管理装置的结构示意图。如图8所示,该应用管理装置可以包括:获取模块801,用于获取第一应用的数据模型,第一应用的数据模型包括用于实现第一应用的功能的程序代码。生成模块802,用于根据第一应用的数据模型,生成第一应用对应的程序实体。
一些实现方式中,数据模型包括属性,第一应用的属性包括第一应用的名称和版本信息中的至少一个。
一些实现方式中,第一应用的属性还包括第一应用的数据模型的标识,其中,数据模型的标识具有唯一性。
一些实现方式中,第一应用的属性还包括第一应用对应的部署节点和第一应用对应的运行资源中的至少一个。
一些实现方式中,生成模块802具体用于:根据第一应用的数据模型,确定第一应用的配置信息,第一应用的配置信息用于指示第一应用的数据模型的属性的配置值;根据第一应用的配置信息,创建第一应用的程序实体。
一些实现方式中,第一应用的数据模型还用于指示第一应用的功能。
一些实现方式中,如图8所示,该装置还包括确定模块803,用于确定第一应用对应的运行资源,并在第一应用对应的运行资源上运行第一应用对应的程序实体。
本申请实施例还对应提供一种应用订阅装置,可以应用于上述运维系统。图9为本申请实施例提供的应用订阅装置的结构示意图。如图9所示,该应用订阅装置可以包括:获取模块901,用于获取第一应用的数据模型,第一应用的数据模型包括用于实现第一应用的功能的程序代码。生成模块902,用于根据第一应用的数据模型,生成第一应用对应的程序实体。接收模块903,用于接收用于订阅第一应用的信息的订阅信息。发送模块904,用于发送与第一应用对应的程序实体的运行状态相关的第一指示信息。
一些实现方式中,生成模块901,具体用于:根据第一应用的数据模型,确定第一应用的配置信息,第一应用的配置信息用于指示第一应用的数据模型的属性的配置值;根据第一应用的配置信息,创建第一应用的程序实体。
一些实现方式中,第一指示信息包括第一应用对应的程序实体的状态;其中,程序实体的状态包括程序实体的创建状态、运行状态和终止状态中的任一种状态。
一些实现方式中,订阅信息还用于订阅与第一应用相关的预设事件以及第一应用的属性的变更信息。
一些实现方式中,发送模块904,还用于:当第一应用对应的程序实体的状态变更时,发送第一通知信息,第一通知信息用于通知第一应用对应的程序实体的状态发生变更。
一些实现方式中,接收模块903,还用于接收查询信息,查询信息用于查询所述第一应用的信息,第一应用的信息包括第一应用的第一属性的信息和第二属性的信息;发送模块904,还用于发送查询结果,查询结果用于指示第一应用的信息。
一些实现方式中,第一属性的信息至少包括:第一应用的数据模型的标识信息;第二属性的信息至少包括:第一应用的属性的名称和第一应用的属性的标识信息。
一些实现方式中,如图9所示,该装置还包括查询模块905,用于根据第一应用的数据模型的标识信息,查找第一应用的程序实体;统计所述第一应用的程序实体的数量。
一些实现方式中,查询模块905,具体用于根据第一应用的数据模型的标识信息,查找第一应用的程序实体的状态。
一些实现方式中,查询模块905,具体用于根据第一应用的配置信息指示的数据模型的标识信息,查找第一应用的程序实体的状态。
如上所述,本申请实施例可以根据上述方法示例对应用管理方法、应用订阅方法中涉及到的各执行主体进行功能模块的划分。其中,上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。另外,还需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。
关于上述实施例中的应用管理装置及应用订阅装置,其中各个模块执行操作的具体方式、以及具备的有益效果,均已经在前述方法实施例中进行了详细描述,此处不再赘述。
本申请实施例还提供一种电子设备,该电子设备可以是运维系统中的硬件设备。电子设备包括:处理器,用于存储处理器可执行指令的存储器;处理器被配置为执行所述指令时,使得电子设备实现如前述实施例所述的方法。
在示例性实施例中,本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序指令;当所述计算机程序指令被电子设备执行时,使得电子设备实现如前述实施例所述的方法。
可选地,上述计算机可读存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,本申请实施例还提供一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器实现如前述实施例所述的方法。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (22)
1.一种应用管理方法,其特征在于,所述方法包括:
获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;
根据所述第一应用的数据模型,生成所述第一应用对应的程序实体。
2.根据权利要求1所述的方法,其特征在于,所述数据模型包括属性,所述第一应用的属性包括所述第一应用的名称和版本信息中的至少一个。
3.根据权利要求2所述的方法,其特征在于,所述第一应用的属性还包括所述第一应用的数据模型的标识,其中,所述数据模型的标识为唯一标识。
4.根据权利要求3所述的方法,其特征在于,所述第一应用的属性还包括所述第一应用对应的部署节点和所述第一应用对应的运行资源中的至少一个。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述第一应用的数据模型,生成所述第一应用对应的程序实体,包括:
根据所述第一应用的数据模型,确定所述第一应用的配置信息,所述第一应用的配置信息用于指示所述第一应用的数据模型的属性的配置值;
根据所述第一应用的配置信息,创建所述第一应用对应的程序实体。
6.根据权利要求5所述的方法,其特征在于,所述第一应用的数据模型还用于指示所述第一应用的功能。
7.根据权利要求4所述的方法,其特征在于,所述方法还包括:
确定所述第一应用对应的运行资源,并在所述第一应用对应的运行资源上运行所述第一应用对应的程序实体。
8.一种应用订阅方法,其特征在于,所述方法包括:
获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;
根据所述第一应用的数据模型,生成所述第一应用对应的程序实体;
接收订阅信息,所述订阅信息用于订阅所述第一应用的信息;
发送第一指示信息,所述第一指示信息与所述第一应用对应的程序实体的运行状态相关。
9.根据权利要求8所述的方法,其特征在于,所述根据所述第一应用的数据模型,生成所述第一应用对应的程序实体,包括:
根据所述第一应用的数据模型,确定所述第一应用的配置信息,所述第一应用的配置信息用于指示所述第一应用的数据模型的属性的配置值;
根据所述第一应用的配置信息,创建所述第一应用对应的程序实体。
10.根据权利要求9所述的方法,其特征在于,所述第一指示信息包括所述第一应用对应的程序实体的状态;
其中,所述程序实体的状态包括所述程序实体的创建状态、运行状态和终止状态中的任一种状态。
11.根据权利要求8所述的方法,其特征在于,所述订阅信息还用于订阅与所述第一应用相关的预设事件以及所述第一应用的属性的变更信息。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
当所述第一应用对应的程序实体的状态变更时,发送第一通知信息,所述第一通知信息用于通知所述第一应用对应的程序实体的状态发生变更。
13.根据权利要求8-12任一项所述的方法,其特征在于,所述方法还包括:
接收查询信息,所述查询信息用于查询所述第一应用的信息,所述第一应用的信息包括所述第一应用的第一属性的信息和第二属性的信息;
发送查询结果,所述查询结果用于指示所述第一应用的信息。
14.根据权利要求13所述的方法,其特征在于,
所述第一属性的信息至少包括:所述第一应用的数据模型的标识信息;
所述第二属性的信息至少包括:所述第一应用的属性的名称和所述第一应用的属性的标识信息。
15.根据权利要求14所述的方法,其特征在于,所述查询所述第一应用的信息,包括:
根据所述第一应用的数据模型的标识信息,查找所述第一应用的程序实体;
统计所述第一应用的程序实体的数量。
16.根据权利要求15所述的方法,其特征在于,所述查询所述第一应用的信息,包括:
根据所述第一应用的数据模型的标识信息,查找所述第一应用的程序实体的状态。
17.根据权利要求15所述的方法,其特征在于,所述查询第一应用的信息,包括:
根据所述第一应用的配置信息指示的数据模型的标识信息,查找所述第一应用的程序实体的状态。
18.一种应用管理装置,其特征在于,所述装置包括:
获取模块,用于获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;
生成模块,用于根据所述第一应用的数据模型,生成所述第一应用对应的程序实体。
19.一种应用订阅装置,其特征在于,所述装置包括:
获取模块,用于获取第一应用的数据模型,所述第一应用的数据模型包括所述第一应用的程序代码,所述程序代码用于实现所述第一应用的功能;
生成模块,用于根据所述第一应用的数据模型,生成所述第一应用对应的程序实体;
接收模块,用于接收订阅信息,所述订阅信息用于订阅所述第一应用的信息;
发送模块,用于发送第一指示信息,所述第一指示信息与所述第一应用对应的程序实体的运行状态相关。
20.一种电子设备,其特征在于,包括:处理器;存储器;以及计算机程序;其中,所述计算机程序存储在所述存储器上,当所述计算机程序被所述处理器执行时,使得所述电子设备实现如权利要求1-7任一项所述的方法,或者,如权利要求8-17任一项所述的方法。
21.一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,其特征在于,当所述计算机程序在电子设备上运行时,使得所述电子设备实现如权利要求1-7任一项所述的方法,或者,如权利要求8-17任一项所述的方法。
22.一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,其特征在于,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器实现如权利要求1-7任一项所述的方法,或者,如权利要求8-17任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210760285.3A CN115202712B (zh) | 2022-06-30 | 2022-06-30 | 应用管理方法、应用订阅方法及相关设备 |
PCT/CN2023/104203 WO2024002302A1 (zh) | 2022-06-30 | 2023-06-29 | 应用管理方法、应用订阅方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210760285.3A CN115202712B (zh) | 2022-06-30 | 2022-06-30 | 应用管理方法、应用订阅方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115202712A true CN115202712A (zh) | 2022-10-18 |
CN115202712B CN115202712B (zh) | 2023-12-29 |
Family
ID=83577513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210760285.3A Active CN115202712B (zh) | 2022-06-30 | 2022-06-30 | 应用管理方法、应用订阅方法及相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115202712B (zh) |
WO (1) | WO2024002302A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024002302A1 (zh) * | 2022-06-30 | 2024-01-04 | 北京亚控科技发展有限公司 | 应用管理方法、应用订阅方法及相关设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110535671A (zh) * | 2018-05-23 | 2019-12-03 | 龙芯中科技术有限公司 | 云平台的管理方法及装置 |
CN111352797A (zh) * | 2018-12-20 | 2020-06-30 | 波音公司 | 用于监视软件应用程序进程的系统和方法 |
CN112039934A (zh) * | 2019-06-03 | 2020-12-04 | 大唐移动通信设备有限公司 | 一种信息反馈、反馈信息处理方法及装置 |
US20210176138A1 (en) * | 2019-06-19 | 2021-06-10 | International Business Machines Corporation | Data center cartography bootstrapping from process table data |
CN113076096A (zh) * | 2021-04-29 | 2021-07-06 | 成都星云智联科技有限公司 | 一种桌面应用程序开发方法、装置、设备及存储介质 |
CN113741889A (zh) * | 2021-08-26 | 2021-12-03 | 北京深演智能科技股份有限公司 | 异构数据库智能存取数据的方法及设备 |
CN114564209A (zh) * | 2022-02-08 | 2022-05-31 | 福思(杭州)智能科技有限公司 | 智能汽车数据的处理方法、装置、设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8285828B2 (en) * | 2007-03-21 | 2012-10-09 | Broadcom Corporation | Method and system for platform level data model for indications based event control and data transfer |
CN109582329A (zh) * | 2018-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 数据管理及订阅方法、装置、系统、电子设备及存储介质 |
CN110768833B (zh) * | 2019-10-25 | 2022-07-29 | 北京宝兰德软件股份有限公司 | 基于kubernetes的应用编排部署方法及装置 |
CN111930521A (zh) * | 2020-09-23 | 2020-11-13 | 北京百度网讯科技有限公司 | 用于部署应用的方法、装置、电子设备及可读存储介质 |
CN115202712B (zh) * | 2022-06-30 | 2023-12-29 | 北京亚控科技发展有限公司 | 应用管理方法、应用订阅方法及相关设备 |
-
2022
- 2022-06-30 CN CN202210760285.3A patent/CN115202712B/zh active Active
-
2023
- 2023-06-29 WO PCT/CN2023/104203 patent/WO2024002302A1/zh unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110535671A (zh) * | 2018-05-23 | 2019-12-03 | 龙芯中科技术有限公司 | 云平台的管理方法及装置 |
CN111352797A (zh) * | 2018-12-20 | 2020-06-30 | 波音公司 | 用于监视软件应用程序进程的系统和方法 |
CN112039934A (zh) * | 2019-06-03 | 2020-12-04 | 大唐移动通信设备有限公司 | 一种信息反馈、反馈信息处理方法及装置 |
US20210176138A1 (en) * | 2019-06-19 | 2021-06-10 | International Business Machines Corporation | Data center cartography bootstrapping from process table data |
CN113076096A (zh) * | 2021-04-29 | 2021-07-06 | 成都星云智联科技有限公司 | 一种桌面应用程序开发方法、装置、设备及存储介质 |
CN113741889A (zh) * | 2021-08-26 | 2021-12-03 | 北京深演智能科技股份有限公司 | 异构数据库智能存取数据的方法及设备 |
CN114564209A (zh) * | 2022-02-08 | 2022-05-31 | 福思(杭州)智能科技有限公司 | 智能汽车数据的处理方法、装置、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024002302A1 (zh) * | 2022-06-30 | 2024-01-04 | 北京亚控科技发展有限公司 | 应用管理方法、应用订阅方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2024002302A1 (zh) | 2024-01-04 |
CN115202712B (zh) | 2023-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107766126B (zh) | 容器镜像的构建方法、系统、装置及存储介质 | |
KR102368200B1 (ko) | 장치 설계를 위한 코드 모듈 선택 | |
CN110673853B (zh) | 一种编译方法、装置及系统 | |
WO2024002243A1 (zh) | 应用管理方法、应用订阅方法及相关设备 | |
WO2020015191A1 (zh) | 业务规则的发布管理方法、电子装置及可读存储介质 | |
CN110569250B (zh) | 一种物联网网元的解析库的管理方法及装置 | |
WO2024002229A1 (zh) | 应用管理方法及相关设备 | |
WO2024002302A1 (zh) | 应用管理方法、应用订阅方法及相关设备 | |
CN112363718A (zh) | 一种基于微服务架构的工业应用集成系统 | |
CN115080101B (zh) | 应用管理方法、应用订阅方法及相关设备 | |
CN115292026A (zh) | 容器集群的管理方法、装置、设备及计算机可读存储介质 | |
CN113656001A (zh) | 平台组件开发方法、装置、计算机设备及存储介质 | |
WO2024002217A1 (zh) | 应用管理方法及相关设备 | |
CN112395108A (zh) | 一种bim元件模型的调用方法及装置 | |
CN111240998A (zh) | 测试用例处理方法和装置 | |
CN115878860A (zh) | 一种菜单的生成方法、装置、服务器设备及介质 | |
CN113254158B (zh) | 一种深度学习系统的部署方法和装置 | |
CN114546410A (zh) | 一种基于设计模式的代码优化方法及相关设备 | |
CN113515293A (zh) | 一种管理DevOps工具链的方法和系统 | |
CN113553095A (zh) | 小程序的发布方法、装置、电子设备及存储介质 | |
CN112231231A (zh) | 云端服务的调试方法、系统及装置 | |
Farhat et al. | Safe Dynamic Reconfiguration of Concurrent Component-based Applications | |
CN117950646B (zh) | 软件开发方法、装置、计算机设备、存储介质及程序产品 | |
Zhang et al. | A Scheme and Implementation of Automatic Deployment of Multilingual Industrial Mechanism Model Based on OpenStack | |
CN117193735A (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 |