CN111708582B - 上线配置方法、装置、电子设备 - Google Patents

上线配置方法、装置、电子设备 Download PDF

Info

Publication number
CN111708582B
CN111708582B CN202010436952.3A CN202010436952A CN111708582B CN 111708582 B CN111708582 B CN 111708582B CN 202010436952 A CN202010436952 A CN 202010436952A CN 111708582 B CN111708582 B CN 111708582B
Authority
CN
China
Prior art keywords
template
information
configuration
online
acquiring
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
CN202010436952.3A
Other languages
English (en)
Other versions
CN111708582A (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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202010436952.3A priority Critical patent/CN111708582B/zh
Publication of CN111708582A publication Critical patent/CN111708582A/zh
Application granted granted Critical
Publication of CN111708582B publication Critical patent/CN111708582B/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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Abstract

本申请公开了上线配置方法、装置、电子设备,涉及软件上线技术领域。具体实现方案为:获取上线配置文件,其中,上线配置文件包括模板和模板定义信息,模板之中包括具有多个模板变量的模板变量组,模板定义信息包括模板变量组对应的多组模板配置信息;获取上线配置文件所对应实例的第一标签信息,根据第一标签信息从所述模板定义信息中,获取模板之中述模板变量组所对应的模板配置信息;以及根据模板配置信息获取模板变量组所对应的配置值,并将配置值对模板中的模板变量组赋值,并加载模板。本申请的配置方法,可根据实例动态调整配置文件,相较于现有技术中依靠人工手动修改上线配置文件,具有效率高、正确率高、降低人工成本等优点。

Description

上线配置方法、装置、电子设备
技术领域
本申请涉及计算机技术领域中的软件上线技术领域,尤其涉及一种上线配置方法、装置、设备以及存储介质。
背景技术
现实生活中,由于多地域多机房,一份相同的上线包要对其中的变量进行不同的赋值,目前进行上线配置时通常的做法是根据实际情况手动修改上线包中的变量值,即在上线时依靠人工手动修改上线包中的变量值,该方法具有效率低、出错率高,人工成本高等缺点。
发明内容
提供了一种上线配置方法、装置、设备、存储介质和计算机程序产品。
根据第一方面,提供了一种上线配置方法,包括:获取上线配置文件,其中,所述上线配置文件包括模板和模板定义信息,所述模板之中包括具有多个模板变量的模板变量组,所述模板定义信息包括所述模板变量组对应的多组模板配置信息;获取所述上线配置文件所对应实例的第一标签信息,根据所述第一标签信息从所述模板定义信息中,获取所述模板之中所述模板变量组所对应的模板配置信息;以及根据所述模板配置信息获取所述模板变量组所对应的配置值,并将所述配置值对所述模板中的所述模板变量组赋值,并加载所述模板。
根据第二方面,提供了一种上线配置装置,包括:第一获取模块,用于获取上线配置文件,其中,所述上线配置文件包括模板和模板定义信息,所述模板之中包括具有多个模板变量的模板变量组,所述模板定义信息包括所述模板变量组对应的多组模板配置信息;第二获取模块,用于获取所述上线配置文件所对应实例的第一标签信息,根据所述标签信息从所述模板定义信息中,获取所述模板之中所述模板变量组所对应的模板配置信息;以及赋值模块,用于根据所述模板配置信息获取所述模板变量组所对应的配置值,并将所述配置值对所述模板中的所述模板变量组赋值,并加载所述模板。
根据第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请第一方面所述的上线配置方法。
根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请第一方面所述的上线配置方法。
根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现本申请第一方面所述的上线配置方法。
本申请提供的实施例,至少具有如下有益技术效果:
根据本申请的上线配置方法,在进行上线配置时可根据实例动态调整配置文件,相较于现有技术中依靠人工手动修改上线配置文件,具有效率高、正确率高、降低人工成本等优点,而且只需根据一份上线配置文件,即可完成对不同实例的上线配置,有助于减少代码冗余,方便检查和修改,易于管理。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例的上线配置方法的流程示意图;
图2是根据本申请实施例的上线配置方法的场景示意图;
图3是根据本申请第二实施例的上线配置方法的流程示意图;
图4是根据本申请第三实施例的上线配置方法的流程示意图;
图5是根据本申请第四实施例的上线配置方法中实例的第一标签信息的获取的流程示意图;
图6是根据本申请第五实施例的上线配置方法中实例的第一标签信息的获取的流程示意图;
图7是根据本申请第六实施例的上线配置方法中实例的第一标签信息的获取的流程示意图;
图8是根据本申请第七实施例的上线配置方法中将配置值对模板中的模板变量组赋值的流程示意图;
图9是根据本申请第一实施例的上线配置装置的框图;
图10是根据本申请第二实施例的上线配置装置的框图;
图11是用来实现本申请实施例的上线配置方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本申请第一实施例的上线配置方法的流程示意图。
如图1所示,本申请第一实施例的上线配置方法包括:
S101,获取上线配置文件,其中,上线配置文件包括模板和模板定义信息,模板之中包括具有多个模板变量的模板变量组,模板定义信息包括模板变量组对应的多组模板配置信息。
在本申请的实施例中,进行上线配置之前,需要编写上线配置文件,进行上线配置时可获取上线配置文件,根据上线配置文件中的模板和模板定义信息,实现上线配置。其中,上线配置文件可根据实际情况进行编写,例如,可根据地域、机房等进行编写,这里不做过多限定。
可以理解的是,模板之中可包括多个模板变量,且多个模板变量构成模板变量组。进一步地,由于多地域多机房,模板变量可有多个取值,则由多个模板变量构成的模板变量组可有多组不同的取值,相应地模板定义信息中可包括模板变量组对应的多组模板配置信息。在进行上线配置时,可根据实际情况从多组模板配置信息中选取一组模板配置信息,以配置模板变量组。
S102,获取上线配置文件所对应实例的第一标签信息,根据第一标签信息从模板定义信息中,获取模板之中模板变量组所对应的模板配置信息。
需要说明的是,本申请实施例中的实例指的是进行上线配置的对象,可为设备、数据系统等。
可以理解的是,进行上线配置时实例可为多个。如图2所示,上线配置文件可存储在上线管理平台中,上线管理平台可根据上线配置文件对实例1、实例2、实例3等多个实例进行上线配置。应说明的是,上线管理平台和每个实例之间建立有通信连接,该通信连接可以是无线网络连接和有线网络连接的至少一种。其中,无线网络连接例如可以为采用移动通信网络、蓝牙、紫峰(Zigbee)或者无线保真(Wireless Fidelity,WIFI)等方式进行的通信连接。有线网络连接例如可以为采用双绞线、同轴电缆、光纤、网线或者数据线(如USB、IEEE1394、串口或并口等)等方式进行的通信连接。可以理解的是,由于地域、机房、设备等因素的不同,不同的实例对应的模板配置信息可能不同。
在本申请的一个实施例中,实例的第一标签信息可用于区分不同的实例,可根据第一标签信息从模板定义信息中,获取该第一标签信息所对应的模板配置信息,即获取该实例上线配置时的模板变量组所对应的模板配置信息。
由此,该方法可根据实例的第一标签信息,从模板定义信息中自动获取其上线配置时的模板变量组所对应的模板配置信息,不需要人工查找获取,较为灵活方便,且正确率较高。
可选的,实例的第一标签信息可根据实际情况进行标定,例如,可根据地域、机房、设备等进行标定,这里不做过多限定。
举例而言,可以根据上线设备所处的地域生成该上线设备的第一标签信息,例如,北京的设备对应的第一标签信息可为“bj”,杭州的设备对应的第一标签信息可为“hz”。
S103,根据模板配置信息获取模板变量组所对应的配置值,并将配置值对模板中的模板变量组赋值,并加载模板。
可以理解的是,模板配置信息中可包括模板变量组中每个模板变量的配置值。获取模板之中模板变量组所对应的模板配置信息之后,可获取模板变量组中每个模板变量的配置值,用于给模板变量组中的每个模板变量赋值,即可实现对模板变量组的赋值。赋值完成后,可加载上线配置文件中的模板,用于实现对实例的上线配置。
其中,模板变量组所对应的配置值可根据实际情况进行标定,例如,可根据地域、机房、设备等进行标定,这里不做过多限定。
综上,根据本申请实施例的上线配置方法,在进行上线配置时可根据实例动态调整配置文件,相较于现有技术中依靠人工手动修改上线配置文件,具有效率高、正确率高、降低人工成本等优点,而且只需根据一份上线配置文件,即可完成对实例的上线配置,有助于减少代码冗余,方便检查和修改,易于管理。
下面结合图3来描述本申请第二实施例的上线配置方法的流程示意图。
如图3所示,本申请第二实施例的上线配置方法包括:
S201,获取上线配置文件,其中,上线配置文件包括模板和模板定义信息,模板之中包括具有多个模板变量的模板变量组,模板定义信息包括模板变量组对应的多组模板配置信息。
关于S201的具体介绍可参见上述实施例中相关内容的记载,此处不再赘述。
S202,获取上线配置文件所对应实例的第一标签信息,获取模板定义信息中每组模板配置信息的第二标签信息。
可以理解的是,模板变量组可对应多组不同的取值,相应地模板定义信息中可包括模板变量组对应的多组模板配置信息,可为每组模板配置信息设置对应的第二标签信息,用于区分不同组的模板配置信息。
可选的,模板配置信息的第二标签信息可根据实际情况进行标定,例如,可根据地域、机房、设备等进行标定,这里不做过多限定。
可选的,模板配置信息的第二标签信息可参照实例的第一标签信息进行标定,即可建立第二标签信息和第一标签信息之间的对应关系,使得模板配置信息和实例可根据第二标签信息、第一标签信息之间的对应关系,建立模板配置信息和实例之间的对应关系,以获取实例对应的模板配置信息。
S203,将第一标签信息与模板配置信息的第二标签信息进行对比,选取与第一标签信息一致的模板配置信息,作为模板之中模板变量组所对应的模板配置信息。
在本申请的一个实施例中,获取实例的第一标签信息以及模板配置信息的第二标签信息之后,可将第一标签信息与第二标签信息进行对比,若某组模板配置信息的第二标签信息与第一标签信息一致,则可将该组模板配置信息作为模板之中模板变量组所对应的模板配置信息,用于对模板变量组进行配置。
举例而言,若实例的第一标签信息为“bj”,模板定义信息包括模板变量组对应的两组模板配置信息,第一组模板配置信息的第二标签信息为“hz”,第二组模板配置信息的第二标签信息为“bj”,则将实例的第一标签信息“bj”与模板配置信息的第二标签信息进行对比时,可识别第一组模板配置信息的第二标签信息“hz”与第一标签信息“bj”不一致,以及识别第二组模板配置信息的第二标签信息“bj”与第一标签信息“bj”一致,则可选取第二组模板配置信息,作为模板之中模板变量组所对应的模板配置信息,用于对模板变量组进行上线配置。
作为另一种可能的实施方式,可预先建立实例的第一标签信息和模板配置信息的第二标签信息之间的映射关系或者映射表,在获取到实例的第一标签信息之后,查询映射关系或者映射表,能够确定该第一标签信息所对应的第二标签信息,从而获取到该实例所对应的模板配置信息,作为模板之中模板变量组所对应的模板配置信息。
S204,根据模板配置信息获取模板变量组所对应的配置值,并将配置值对模板中的模板变量组赋值,并加载模板。
需要说明的是,本申请第二实施例的上线配置方法中未披露的细节,请参照本申请第一实施例的上线配置方法中所披露的细节,这里不再赘述。
综上,根据本申请实施例的上线配置方法,可根据实例的第一标签信息,以及模板配置信息的第二标签信息,从多组模板配置信息中选取与第一标签信息一致的模板配置信息,用于配置模板变量组,可实现模板变量组所对应的模板配置信息的自动获取,不需要人工查找获取,较为灵活方便,且正确率较高。
下面结合图4来描述本申请第三实施例的上线配置方法的流程示意图。
如图4所示,本申请第三实施例的上线配置方法包括:
S301,识别用户是否选择手动上线配置。
如果是,则执行步骤S302;如果否,则执行步骤S303。
在本申请的一个实施例中,在上线配置时,用户可选择手动进行上线配置或者自动进行上线配置,可考虑到用户的实际上线需求,提高了用户的上线体验。
S302,按照手动配置流程继续进行上线配置。
需要说明的是,按照手动配置流程进行上线配置时,用户可根据实际情况手动修改上线配置文件中模板变量的值。
S303,识别是否存在上线配置文件。
如果是,则执行步骤S304;如果否,则执行步骤S309。
其中,上线配置文件包括模板和模板定义信息,模板之中包括具有多个模板变量的模板变量组,模板定义信息包括模板变量组对应的多组模板配置信息。
在本申请的一个实施例中,获取上线配置文件之前,还可识别是否存在上线配置文件,若识别出存在上线配置文件,则可执行获取上线配置文件及其后续步骤,若识别出不存在上线配置文件,则不需要再执行获取上线配置文件的步骤,可直接发出上线出现错误的提醒信息,并识别上线失败。
S304,获取上线配置文件,以及获取上线配置文件所对应实例的第一标签信息,以及获取模板定义信息中每组模板配置信息的第二标签信息。
关于S304的具体介绍可参见上述实施例中相关内容的记载,此处不再赘述。
S305,将第一标签信息与模板配置信息的第二标签信息进行对比,识别是否存在与第一标签信息一致的第二标签信息。
如果是,则执行步骤S306;如果否,则执行步骤S309。
在本申请的一个实施例中,将实例的第一标签信息与模板配置信息的第二标签信息进行对比时,可识别是否存在与第一标签信息一致的第二标签信息,若存在与第一标签信息一致的第二标签信息,则说明该实例上线配置时的模板变量组所对应的模板配置信息已在模板配置信息中定义,则可继续执行选取与第一标签信息一致的模板配置信息及其后续步骤。
若不存在与第一标签信息一致的第二标签信息,则说明该实例上线配置时的模板变量组所对应的模板配置信息没有在模板配置信息中定义,则可直接发出上线出现错误的提醒信息,并识别上线失败。
S306,选取与第一标签信息一致的模板配置信息,作为模板之中模板变量组所对应的模板配置信息。
关于S306的具体介绍可参见上述实施例中相关内容的记载,此处不再赘述。
S307,识别模板变量组所对应的模板配置信息中,是否包括模板变量组中的所有模板变量的配置信息。
如果是,则执行步骤S308;如果否,则执行步骤S309。
在本申请的一个实施例中,获取模板之中模板变量组所对应的模板配置信息之后,还可继续识别模板变量组所对应的模板配置信息中,是否包括模板变量组中的所有模板变量的配置信息,如果是,则说明模板变量组中的所有模板变量的配置信息都已在模板配置信息中定义,则可继续执行根据模板配置信息获取模板变量组所对应的配置值及其后续步骤。
如果否,则说明模板变量组中,有的模板变量的配置信息未在模板配置信息中定义,则可直接发出上线出现错误的提醒信息,并识别上线失败。
S308,根据模板配置信息获取模板变量组所对应的配置值,并将配置值对模板中的模板变量组赋值,并加载模板。
需要说明的是,对模板变量组赋值,加载模板之后,可继续进行上线配置。
S309,发出上线出现错误的提醒信息,并识别上线失败。
需要说明的是,本申请第三实施例的上线配置方法中未披露的细节,请参照本申请上述实施例的上线配置方法中所披露的细节,这里不再赘述。
综上,根据本申请实施例的上线配置方法,在进行上线配置时,用户可选择手动进行上线配置或者自动进行上线配置,可考虑到用户的实际上线需求,提高了用户的上线体验,还可在识别不存在上线配置文件,或识别不存在与第一标签信息一致的第二标签信息,或模板变量组所对应的模板配置信息中,不包括模板变量组中的所有模板变量的配置信息这三种情况下,发出上线出现错误的提醒信息,并识别上线失败,以便及时提醒用户上线失败。
在上述实施例的基础上,获取上线配置文件所对应实例的第一标签信息,如图5所示,可包括:
S401,获取实例的属性文件,从属性文件中读取第一标签信息。
需要说明的是,在进行上线配置之前,需要完成实例的属性文件的编写,且属性文件中包括实例的第一标签信息。可选的,实例的属性文件可预先存储在实例的存储空间中,以供上线配置时获取。可选的,属性文件可根据实际情况进行编写,例如,可根据地域、机房等进行编写,这里不做过多限定。
可以理解的是,除了第一标签信息,属性文件中还可包括其他多个信息。在进行上线配置时,可根据实例的第一标签信息的查询请求,获取实例的属性文件,以及第一标签信息在属性文件中的存储地址,进而可在该存储地址处读取到第一标签信息,以实现实例的第一标签信息的获取。
获取上线配置文件所对应实例的第一标签信息,如图6所示,还可包括:
S501,向服务端发送携带实例的标识信息的查询请求。
可以理解的是,实例的第一标签信息可预先设置在服务端的存储空间中,可向服务端发送携带实例的标识信息的查询请求,以获取实例的第一标签信息。可选的,首先可和服务端建立网络连接,以和服务端进行数据传输,可选的,网络连接可为移动网络,例如3G、4G、5G等。
在本申请的一个实施例中,服务端在接收携带实例的标识信息的查询请求之后,可根据查询请求中实例的标识信息,确定查询请求所针对的实例,然后获取该实例的第一标签信息并进行反馈。
其中,标识信息用于区分不同实例,可根据实际情况进行标定。例如,实例为设备时,标识信息可为设备的名称、编号等信息。
可选的,可预先在服务端中设置实例的标识信息与第一标签信息之间的映射关系或者映射表,服务端在获取到查询请求中的实例的标识信息之后,查询映射关系或者映射表,能够确定查询请求所针对的实例的第一标签信息,并向用户端反馈。
S502,接收服务端的反馈信息,从反馈信息中获取第一标签信息。
可以理解的是,服务端的反馈信息中携带实例的第一标签信息,接收到服务端的反馈信息之后,可从反馈信息获取实例的第一标签信息,以实现实例的第一标签信息的获取。
获取上线配置文件所对应实例的第一标签信息,如图7所示,还可包括:
S601,获取实例的标签配置操作,根据标签配置操作,获取第一标签信息。
可以理解的是,可对实例的标签进行配置,标签配置操作携带实例的第一标签信息。可选的,标签配置操作会设置在实例或者服务器的存储空间中,以供上线配置时获取。在上线配置时,可从实例或者服务器的存储空间中获取实例的标签配置操作,然后根据标签配置操作,获取实例的第一标签信息。
在上述实施例的基础上,将配置值对模板中的模板变量组赋值,如图8所示,可包括:
S701,获取模板之中的多个变量,以及获取每个变量的类型标识。
可以理解的是,模板之中可包括多个变量,有些变量的值是固定不变的,有些变量的值需要根据实际情况进行调整。例如,设备的用户名可以是固定不变的,因此用于配置用户名的变量的取值可以是固定不变的,而设备的域名、端口、密码等变量的取值往往会随着地域、机房、设备的不同而改变,因此用于配置域名、端口、密码等变量的取值需要根据实际情况进行调整。
需要说明的是,本申请实施例中的模板变量指的是模板中需要根据实际情况进行调整的变量。
容易理解的是,模板中固定不变的变量对应的模板配置信息是唯一的。
进一步地,为了区分模板中的模板变量和其他变量,可预先为模板中的每个变量设置类型标识。例如,将<${value}$>作为模板变量的类型标识,用于区分模板变量和其他变量。需要说明的是,每个变量的类型标识可根据实际情况进行标定,这里不做过多限定。容易理解的是,模板变量的类型标识和其他变量的类型标识不同。
S702,根据类型标识,从所有的变量中识别出模板变量,利用配置值对模板变量进行赋值。
可以理解的是,将配置值对模板中的模板变量组赋值时,仅需对模板中的模板变量进行赋值,在上线配置时,可根据模板中每个变量的类型标识,从所有的变量中识别出模板变量,之后可利用配置值对模板变量进行赋值。
该方法可根据模板中每个变量的类型标识,将模板变量和其他变量进行区分,以便在赋值时可从所有变量中识别出模板变量,提高了赋值的正确率。
下面举例说明本申请实施例中的上线配置文件的脚本的书写方式。
上线配置文件可命名为“setting.conf”,模板中可包括4个变量,分别为MYSQL_HOST、MYSQL_PORT、MYSQL_PASSWORD、MYSQL_USER,分别对应MySql的域名、端口、密码和用户名。模板变量组可包括MYSQL_HOST、MYSQL_PORT、MYSQL_PASSWORD这三个模板变量,<${value}$>作为模板变量的类型标识,用于区分模板变量和其他变量。
模板的具体脚本如下:
MYSQL_HOST=<$mysql_host$>
MYSQL_PORT=<$mysql_port$>
MYSQL_PASSWORD=<$mysql_password$>
MYSQL_USER=root
模板定义信息可包括模板变量组对应的多组模板配置信息,以两组模板配置信息为例,模板定义信息的具体脚本如下:
bj:
mysql_host:tc-bask.epc
mysql_port:8803
mysql_password:1234
hz:
mysql_host:cp01-ark05.epc
mysql_port:3602
mysql_password:8442
可知两组模板配置信息的第二标签信息分别为“bj”、“hz”。
本例中,实例的第一标签信息可根据实例所处的城市名称进行标定,例如,处于北京的实例的第一标签信息为“bj”,处于杭州的实例的第一标签信息为“hz”,处于广州的实例的第一标签信息为“gz”。
若获取的实例的第一标签信息为“bj”,则可将第二标签信息为“bj”的模板配置信息作为该实例上线配置时模板变量组所对应的模板配置信息,根据模板配置信息获取模板变量组所对应的配置值,并将配置值对模板中的模板变量组赋值,并加载模板,此时模板的具体脚本如下:
MYSQL_HOST=tc-bask.epc
MYSQL_PORT=8803
MYSQL_PASSWORD=1234
MYSQL_USER=root
或者,若获取的实例的第一标签信息为“hz”,则可将第二标签信息为“hz”的模板配置信息作为该实例上线配置时模板变量组所对应的模板配置信息,根据模板配置信息获取模板变量组所对应的配置值,并将配置值对模板中的模板变量组赋值,并加载模板,此时模板的具体脚本如下:
MYSQL_HOST=cp01-ark05.epc
MYSQL_PORT=3602
MYSQL_PASSWORD=8442
MYSQL_USER=root
或者,若获取的实例的第一标签信息为“gz”,由于模板定义信息中不存在第二标签信息为“gz”的模板配置信息,则此时可发出上线出现错误的提醒信息,并识别上线失败。
图9是根据本申请第一实施例的上线配置装置的框图。
如图9所示,本申请实施例的上线配置装置1000,包括:第一获取模块100,第二获取模块200和赋值模块300。
第一获取模块100用于获取上线配置文件,其中,所述上线配置文件包括模板和模板定义信息,所述模板之中包括具有多个模板变量的模板变量组,所述模板定义信息包括所述模板变量组对应的多组模板配置信息。
第二获取模块200用于获取所述上线配置文件所对应实例的第一标签信息,根据所述标签信息从所述模板定义信息中,获取所述模板之中所述模板变量组所对应的模板配置信息;以及
赋值模块300用于根据所述模板配置信息获取所述模板变量组所对应的配置值,并将所述配置值对所述模板中的所述模板变量组赋值,并加载所述模板。
在本申请的一个实施例中,如图10所示,所述第一获取模块100,包括:第一获取单元110,用于获取所述模板定义信息中每组模板配置信息的第二标签信息;选取单元120,用于将所述第一标签信息与所述模板配置信息的第二标签信息进行对比,选取与所述第一标签信息一致的所述模板配置信息,作为所述模板之中所述模板变量组所对应的模板配置信息。
在本申请的一个实施例中,如图10所示,所述赋值模块300,包括:第二获取单元310,用于获取所述模板之中的多个变量;第三获取单元320,用于获取每个所述变量的类型标识;赋值单元330,用于根据所述类型标识,从所有的变量中识别出所述模板变量,利用所述配置值对所述模板变量进行赋值。
在本申请的一个实施例中,如图10所示,所述第二获取模块200,还包括:第四获取单元210,用于获取所述实例的属性文件,从所述属性文件中读取所述标签信息。
在本申请的一个实施例中,如图10所示,所述第二获取模块200,还包括:发送单元220,用于向服务端发送携带所述实例的标识信息的查询请求;接收单元230,用于接收所述服务端的反馈信息,从所述反馈信息中获取所述实例的第一标签信息。
在本申请的一个实施例中,如图10所示,所述第二获取模块200,还包括:第五获取单元240,用于获取所述实例的标签配置操作,根据所述标签配置操作,获取所述实例的第一标签信息。
根据本申请实施例的上线配置装置,在进行上线配置时可根据实例动态调整配置文件,相较于现有技术中依靠人工手动修改上线配置文件,具有效率高、正确率高、降低人工成本等优点,而且只需根据一份上线配置文件,即可完成对实例的上线配置,有助于减少代码冗余,方便检查和修改,易于管理。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
如图11所示,是根据本申请实施例的上线配置方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图11所示,该电子设备包括:一个或多个处理器801、存储器802,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图11中以一个处理器801为例。
存储器802即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的上线配置方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的上线配置方法。
存储器802作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的上线配置方法对应的程序指令/模块(例如,附图9所示的第一获取模块100、第二获取模块200和赋值模块300)。处理器801通过运行存储在存储器802中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的上线配置方法。
存储器802可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据上线配置方法的电子设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器802可选包括相对于处理器801远程设置的存储器,这些远程存储器可以通过网络连接至上线配置方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上线配置方法的电子设备还可以包括:输入装置803和输出装置804。处理器801、存储器802、输入装置803和输出装置804可以通过总线或者其他方式连接,图11中以通过总线连接为例。
输入装置803可接收输入的数字或字符信息,以及产生与上线配置方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置804可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
本申请提供了一种计算机程序产品,包括计算机程序,其中,计算机程序被处理器执行时实现上述实施例所述的上线配置方法。
根据本申请实施例的技术方案,在进行上线配置时可根据实例动态调整配置文件,相较于现有技术中依靠人工手动修改上线配置文件,具有效率高、正确率高、降低人工成本等优点,而且只需根据一份上线配置文件,即可完成对实例的上线配置,有助于减少代码冗余,方便检查和修改,易于管理。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

Claims (12)

1.一种上线配置方法,其特征在于,包括:
获取上线配置文件,其中,所述上线配置文件包括模板和模板定义信息,所述模板之中包括具有多个模板变量的模板变量组,所述模板定义信息包括所述模板变量组对应的多组模板配置信息;
获取所述上线配置文件所对应实例的第一标签信息,根据所述第一标签信息从所述模板定义信息中,获取所述模板之中所述模板变量组所对应的模板配置信息,其中,所述第一标签信息是根据地域、机房或设备进行标定的;以及
根据所述模板配置信息获取所述模板变量组所对应的配置值,并将所述配置值对所述模板中的所述模板变量组赋值,并加载所述模板;
所述根据所述第一标签信息从所述模板定义信息中,获取所述模板之中所述模板变量组所对应的模板配置信息,还包括:
获取所述模板定义信息中每组模板配置信息的第二标签信息,其中,所述第二标签信息是根据地域、机房或设备进行标定的;
将所述第一标签信息与所述模板配置信息的第二标签信息进行对比,选取与所述第一标签信息一致的所述模板配置信息,作为所述模板之中所述模板变量组所对应的模板配置信息。
2.根据权利要求1所述的上线配置方法,其特征在于,所述将所述配置值对所述模板中的所述模板变量组赋值,包括:
获取所述模板之中的多个变量;
获取每个所述变量的类型标识;
根据所述类型标识,从所有的变量中识别出所述模板变量,利用所述配置值对所述模板变量进行赋值。
3.根据权利要求1-2任一项所述的上线配置方法,其特征在于,所述获取所述上线配置文件所对应实例的第一标签信息,包括:
获取所述实例的属性文件,从所述属性文件中读取所述第一标签信息。
4.根据权利要求1-2任一项所述的上线配置方法,其特征在于,所述获取所述上线配置文件所对应实例的第一标签信息,包括:
向服务端发送携带所述实例的标识信息的查询请求;
接收所述服务端的反馈信息,从所述反馈信息中获取所述第一标签信息。
5.根据权利要求1-2任一项所述的上线配置方法,其特征在于,所述获取所述上线配置文件所对应实例的第一标签信息,包括:
获取所述实例的标签配置操作,根据所述标签配置操作,获取所述第一标签信息。
6.一种上线配置装置,其特征在于,包括:
第一获取模块,用于获取上线配置文件,其中,所述上线配置文件包括模板和模板定义信息,所述模板之中包括具有多个模板变量的模板变量组,所述模板定义信息包括所述模板变量组对应的多组模板配置信息;
第二获取模块,用于获取所述上线配置文件所对应实例的第一标签信息,根据所述标签信息从所述模板定义信息中,获取所述模板之中所述模板变量组所对应的模板配置信息,其中,所述第一标签信息是根据地域、机房或设备进行标定的;以及
赋值模块,用于根据所述模板配置信息获取所述模板变量组所对应的配置值,并将所述配置值对所述模板中的所述模板变量组赋值,并加载所述模板;
所述第一获取模块,包括:
第一获取单元,用于获取所述模板定义信息中每组模板配置信息的第二标签信息,其中,所述第二标签信息是根据地域、机房或设备进行标定的;
选取单元,用于将所述第一标签信息与所述模板配置信息的第二标签信息进行对比,选取与所述第一标签信息一致的所述模板配置信息,作为所述模板之中所述模板变量组所对应的模板配置信息。
7.根据权利要求6所述的上线配置装置,其特征在于,所述赋值模块,包括:
第二获取单元,用于获取所述模板之中的多个变量;
第三获取单元,用于获取每个所述变量的类型标识;
赋值单元,用于根据所述类型标识,从所有的变量中识别出所述模板变量,利用所述配置值对所述模板变量进行赋值。
8.根据权利要求6-7任一项所述的上线配置装置,其特征在于,所述第二获取模块,还包括:
第四获取单元,用于获取所述实例的属性文件,从所述属性文件中读取所述标签信息。
9.根据权利要求6-7任一项所述的上线配置装置,其特征在于,所述第二获取模块,还包括:
发送单元,用于向服务端发送携带所述实例的标识信息的查询请求;
接收单元,用于接收所述服务端的反馈信息,从所述反馈信息中获取所述实例的第一标签信息。
10.根据权利要求6-7任一项所述的上线配置装置,其特征在于,所述第二获取模块,还包括:
第五获取单元,用于获取所述实例的标签配置操作,根据所述标签配置操作,获取所述实例的第一标签信息。
11. 一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的方法。
CN202010436952.3A 2020-05-21 2020-05-21 上线配置方法、装置、电子设备 Active CN111708582B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010436952.3A CN111708582B (zh) 2020-05-21 2020-05-21 上线配置方法、装置、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010436952.3A CN111708582B (zh) 2020-05-21 2020-05-21 上线配置方法、装置、电子设备

Publications (2)

Publication Number Publication Date
CN111708582A CN111708582A (zh) 2020-09-25
CN111708582B true CN111708582B (zh) 2023-06-23

Family

ID=72537890

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010436952.3A Active CN111708582B (zh) 2020-05-21 2020-05-21 上线配置方法、装置、电子设备

Country Status (1)

Country Link
CN (1) CN111708582B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114816570A (zh) * 2022-04-13 2022-07-29 京东城市(北京)数字科技有限公司 处理配置信息和生成应用程序的方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017206690A1 (zh) * 2016-06-01 2017-12-07 中兴通讯股份有限公司 光网络单元配置方法、装置及光线路终端
WO2017211091A1 (zh) * 2016-06-06 2017-12-14 中兴通讯股份有限公司 网络接入设备的配置方法及装置
CN108023773A (zh) * 2017-12-07 2018-05-11 锐捷网络股份有限公司 一种实现网络设备零配置上线的方法和配置服务器
CN109460527A (zh) * 2018-09-25 2019-03-12 中国平安人寿保险股份有限公司 产品数据配置方法、装置、计算机设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107341025B (zh) * 2016-05-03 2021-09-03 北京京东尚科信息技术有限公司 应用更新方法和装置
CN108804155A (zh) * 2018-05-31 2018-11-13 中链科技有限公司 配置文件获取方法、装置、终端及计算机可读存储介质
CN110138588B (zh) * 2019-04-04 2022-07-08 微梦创科网络科技(中国)有限公司 配置文件自动化管理方法和系统、配置管理平台和客户端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017206690A1 (zh) * 2016-06-01 2017-12-07 中兴通讯股份有限公司 光网络单元配置方法、装置及光线路终端
WO2017211091A1 (zh) * 2016-06-06 2017-12-14 中兴通讯股份有限公司 网络接入设备的配置方法及装置
CN108023773A (zh) * 2017-12-07 2018-05-11 锐捷网络股份有限公司 一种实现网络设备零配置上线的方法和配置服务器
CN109460527A (zh) * 2018-09-25 2019-03-12 中国平安人寿保险股份有限公司 产品数据配置方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN111708582A (zh) 2020-09-25

Similar Documents

Publication Publication Date Title
US9934129B1 (en) Determining application test results using screenshot metadata
CN108519967B (zh) 图表可视化方法、装置、终端和存储介质
CN111639027B (zh) 一种测试方法、装置及电子设备
CN111259107B (zh) 行列式文本的存储方法、装置以及电子设备
CN111752960B (zh) 数据处理方法和装置
EP4075283A1 (en) Method and apparatus for continuous integration testing
CN111708582B (zh) 上线配置方法、装置、电子设备
CN111061743A (zh) 数据加工方法、装置和电子设备
CN114995719B (zh) 列表渲染方法、装置、设备以及存储介质
CN111177479A (zh) 获取关系网络图中节点的特征向量的方法以及装置
CN115905322A (zh) 业务处理方法、装置、电子设备及存储介质
CN112579897B (zh) 信息搜索方法和装置
CN111581049B (zh) 分布式系统运行状态监测方法、装置、设备及存储介质
CN113010811B (zh) 网页获取方法、装置、电子设备及计算机可读存储介质
CN114389969A (zh) 客户端的测试方法、装置、电子设备和存储介质
US11315055B2 (en) System and method for visualizing an order allocation process
CN113641688A (zh) 节点更新方法、相关装置及计算机程序产品
CN112052347A (zh) 图像存储方法、装置以及电子设备
CN112532483A (zh) 测试方法、装置、电子设备及存储介质
CN112433783A (zh) 一种配置方法及相关设备
CN111523000A (zh) 用于导入数据的方法、装置、设备以及存储介质
CN113377638B (zh) 性能测试工具的生成方法和装置
CN113220282B (zh) 小程序的开发处理方法、设备和存储介质
CN113626409B (zh) 一种测试资料处理方法、装置、设备及存储介质
CN114650222B (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