CN106802805B - 一种适用服务器管理的应用服务管理方法及装置 - Google Patents

一种适用服务器管理的应用服务管理方法及装置 Download PDF

Info

Publication number
CN106802805B
CN106802805B CN201710033117.3A CN201710033117A CN106802805B CN 106802805 B CN106802805 B CN 106802805B CN 201710033117 A CN201710033117 A CN 201710033117A CN 106802805 B CN106802805 B CN 106802805B
Authority
CN
China
Prior art keywords
service
operation interface
application
command
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.)
Active
Application number
CN201710033117.3A
Other languages
English (en)
Other versions
CN106802805A (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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710033117.3A priority Critical patent/CN106802805B/zh
Publication of CN106802805A publication Critical patent/CN106802805A/zh
Application granted granted Critical
Publication of CN106802805B publication Critical patent/CN106802805B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种适用服务器管理的应用服务管理方法及装置,该方法包括:对于多个应用服务,提取应用服务的共同的服务命令;在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;对所述共同的服务命令定义统一的服务操作接口;通过继承所述服务操作接口,新增扩展服务操作接口。该方法实现降低代码量,提高业务效率。

Description

一种适用服务器管理的应用服务管理方法及装置
技术领域
本发明涉及服务器管理技术领域,特别是涉及一种适用服务器管理的应用服务管理方法及装置。
背景技术
目前,随着云概念的推出,云计算现在已经成为互联网的主流发展方向,但实现云技术的关键仍是对计算资源的整合与管理,也就是对服务器的统一化管理,通过上层业务,将服务器计算资源进行整合,再根据需求进行资源划分,达到较高的资源利用率。而上层负责的逻辑业务,除对用户操作数据的报错,以及服务器设备状态的记录外,实现对服务器底层各种应用服务操作也是很重要的,根据服务进行拼接服务命令,执行命令获取结果,判断服务状态等,大量的拼接逻辑充斥在逻辑中,导致代码可读性极差,并且在维护时直接在主业务逻辑中植入新的拼接代码,重复代码会填充到主逻辑中,代码量较大,业务效率较低。
通过该发明的方法,将通用服务的操作抽象提取出来,使用注册表记录服务名以及其配置资源,定义统一的服务接口,通过独立的构造对象,对服务的不同处进行动态扩展实现,并使用装饰者模式,提供扩展服务的方法,当通用服务不满足业务需求时,可通过该方法进行扩展,降低了代码量,提高的业务效率和代码的可维护性,简易开发过程。
发明内容
本发明的目的是提供一种适用服务器管理的应用服务管理方法及装置,以实现降低代码量,提高业务效率。
为解决上述技术问题,本发明提供一种适用服务器管理的应用服务管理方法,该方法包括:
对于多个应用服务,提取应用服务的共同的服务命令;
在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;
对所述共同的服务命令定义统一的服务操作接口;
通过继承所述服务操作接口,新增扩展服务操作接口。
优选的,所述在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息之后,还包括:
依据注册表中记录的服务类型,对应用服务进行业务配置进行重载。
优选的,对所述共同的服务命令定义统一的服务操作接口之后,还包括:
利用所述服务操作接口将所述共同的命令封装成服务实体类。
优选的,所述通过继承所述服务操作接口,新增扩展服务操作接口之后,还包括:
以命令执行对象和应用服务注册表中的服务类型为构造方法,实现扩展服务操作接口,封装成新的服务实体类。
本发明还提供一种适用服务器管理的应用服务管理装置,用于实现上述适用服务器管理的应用服务管理方法,该装置包括:
命令提取模块,用于对于多个应用服务,提取应用服务的共同的服务命令;
应用服务注册表模块,用于在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;
通用服务接口模块,用于对所述共同的服务命令定义统一的服务操作接口;
扩展服务模块,用于通过继承所述服务操作接口,新增扩展服务操作接口。
优选的,所述装置还包括:
重载配置模块,用于依据注册表中记录的服务类型,对应用服务进行业务配置进行重载。
优选的,所述装置还包括:
通用服务实现模块,用于利用所述服务操作接口将所述共同的命令封装成服务实体类。
优选的,所述装置还包括:
应用服务动态构造模块,用于以命令执行对象和应用服务注册表中的服务类型为构造方法,实现扩展服务操作接口,封装成新的服务实体类。
本发明所提供的一种适用服务器管理的应用服务管理方法及装置,对于多个应用服务,提取应用服务的共同的服务命令;在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;对共同的服务命令定义统一的服务操作接口;通过继承服务操作接口,新增扩展服务操作接口。可见,将大量的重复拼接的共同命令进行抽象提取,并对共同的服务命令定义统一的服务操作接口,即封装成共同方法,并且通过继承服务操作接口,新增扩展服务操作接口,这样进行新操作接口的拓展,可容纳几乎所有服务操作,如此兼容多种操作类型的应用服务,对开发者屏蔽了繁琐的代码实现,极大简化了代码量和开发工作,增强了代码的可维护性以及扩展性,节省开发成本以及维护成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明所提供的一种适用服务器管理的应用服务管理方法的流程图;
图2为本发明所提供的一种适用服务器管理的应用服务管理装置的结构示意图。
具体实施方式
本发明的核心是提供一种适用服务器管理的应用服务管理方法及装置,以实现降低代码量,提高业务效率。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明所提供的一种适用服务器管理的应用服务管理方法的流程图,该方法包括:
S11:对于多个应用服务,提取应用服务的共同的服务命令;
S12:在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;
S13:对共同的服务命令定义统一的服务操作接口;
S14:通过继承服务操作接口,新增扩展服务操作接口。
可见,该方法将大量的重复拼接的共同命令进行抽象提取,并对共同的服务命令定义统一的服务操作接口,即封装成共同方法,并且通过继承服务操作接口,新增扩展服务操作接口,这样进行新操作接口的拓展,可容纳几乎所有服务操作,如此兼容多种操作类型的应用服务,对开发者屏蔽了繁琐的代码实现,极大简化了代码量和开发工作,增强了代码的可维护性以及扩展性,节省开发成本以及维护成本。
基于上述方法,具体的,步骤S12之后,还包括步骤S21:依据注册表中记录的服务类型,对应用服务进行业务配置进行重载。
进一步的,步骤S13之后,还包括步骤S22:利用服务操作接口将共同的命令封装成服务实体类。
进一步的,步骤S14之后,还包括步骤S23:以命令执行对象和应用服务注册表中的服务类型为构造方法,实现扩展服务操作接口,封装成新的服务实体类。
具体的,在对服务器底层应用服务管理的开发过程中,存在大量对应用服务的操作过程,如开启、停止、重启服务、将服务设置开启/关闭开机自启动、检测服务状态等。本方法通过抽取操作这些服务通用部分,定义通用的服务接口,然后定义通用服务类实现该接口,并在实现类中定义以底层命令实现对象以及注册至应用服务表中的服务为参数的构造方法,用以实例化基本的服务对象。抽离这些服务存在的个性化应用配置,定义构造对象,在构造对象中,对通用实现中的“配置服务”方法进行重写,完成对其配置文件的独特操作后,通过注册的服务类型,返回经过重写该方法的服务对象。针对当前设计不满足的应用服务,可使用扩展服务模块进行拓展,该模块集成通用服务模块,集成通用服务接口,并定义需要拓展的操作接口即典型的装饰者模式,以命令执行对象和服务注册表的服务类型为构造方法,并实现新定义的接口操作,封装成新的服务实体类,完成操作。
本方法通过抽象应用服务的共同的命令部分,使用服务注册表来动态构建可适用于操作应用服务的服务管理对象,同时提供可重写以及可拓展服务方法,兼容多种操作类型的应用服务。主要通过构建服务注册表,服务接口、服务实现类、动态构造类以及自定义扩展模块,简化繁琐的命令拼接步骤,在对应用服务量大的情况时尤为重要,增强了代码的维护性和扩展性。将大量的重复拼接命令与执行获取结果的操作抽象提取,并封装成共同方法,对开发者屏蔽了繁琐的实现,极大简化了代码量和开发工作,增强了代码的可维护性以及扩展性,节省开发成本以及维护成本
详细的,步骤S11的执行者为命令提取模块,步骤S12的执行者为应用服务注册表模块,步骤S13的执行者为通用服务接口模块,步骤S14的执行者为扩展服务模块。步骤S21的执行者为重载配置模块,步骤S22的执行者为通用服务实现模块,步骤S23的执行者为应用服务动态构造模块。
目前在针对服务器管理和使用中,对于管理平台业务对各种服务器本地应用服务的使用和管理时,大量的命令拼接和执行,会导致该过程中逻辑混乱,代码可读性查的情况,而本方法采用命令提取模块,应用服务注册表模块,通用服务接口模块,扩展服务模块,重载配置模块,通用服务实现模块,应用服务动态构造模块实现对被管理服务器中,各个底层应用服务器的管理以及扩展操作,降低了在业务逻辑中对命令复杂的拼接操做,提升了代码的可读性以及易维护性,以及代码的可扩展性。
其中,应用服务注册表模块用于记录需要管理的服务名称以及该应用服务的底层配置文件信息。
通用服务接口模块定义了用于操作服务器应用服务的通用操作接口,包括启动、关闭、重启、查看运行状态等基本服务操作。
通用服务实现模块继承通用服务操作接口,包含接收控制服务器底层命令对象以及应用服务注册表对象的构造方法。这里的命令对象是用于服务器执行底层命令的构件。
应用服务动态构造模块根据注册表中注册的服务类型,根据应用服务的不同,对服务进行业务配置进行重载,返回经过特殊构建的通用服务实体。
扩展服务模块根据集成通用服务,使用装饰者模式,通过注册表获取服务基本信息,继承通用服务接口,新增扩展服务操作接口,实现扩展新服务功能的效果。
请参考图2,图2为本发明所提供的一种适用服务器管理的应用服务管理装置的结构示意图,用于实现上述适用服务器管理的应用服务管理方法,该装置包括:
命令提取模块101,用于对于多个应用服务,提取应用服务的共同的服务命令;
应用服务注册表模块102,用于在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;
通用服务接口模块103,用于对共同的服务命令定义统一的服务操作接口;
扩展服务模块104,用于通过继承服务操作接口,新增扩展服务操作接口。
可见,该装置将大量的重复拼接的共同命令进行抽象提取,并对共同的服务命令定义统一的服务操作接口,即封装成共同方法,并且通过继承服务操作接口,新增扩展服务操作接口,这样进行新操作接口的拓展,可容纳几乎所有服务操作,如此兼容多种操作类型的应用服务,对开发者屏蔽了繁琐的代码实现,极大简化了代码量和开发工作,增强了代码的可维护性以及扩展性,节省开发成本以及维护成本。
基于上述装置,进一步的,所述装置还包括:
重载配置模块,用于依据注册表中记录的服务类型,对应用服务进行业务配置进行重载。
进一步的,所述装置还包括:
通用服务实现模块,用于利用服务操作接口将共同的命令封装成服务实体类。
进一步的,所述装置还包括:
应用服务动态构造模块,用于以命令执行对象和应用服务注册表中的服务类型为构造方法,实现扩展服务操作接口,封装成新的服务实体类。
本发明提供的适用服务器管理的应用服务管理方法及装置,通过抽离对应用服务操作以及操作服务命令的通用部分,分别抽象成通用服务接口模块以及其实现可以极大的简化无用的代码,尤其当对服务操作量极大的情况。将通用服务模块结合应用服务动态构造模块,复用通用服务模块的构造方法,动态重写每个服务中独特的命令实现,例如对服务的配置文件进行修改,动态添加初始化参数等,或是重写独特的服务校验或启动命令等等,通过该设计可容纳与通用服务有操作命令差异的服务,免去了重新编写对全新服务的操作命令的繁琐代码。而通过使用装饰者模式完成设计的扩展服务模块,可对通用服务操作定义的接口不足以完成对新服务的操作时,对其操作进行拓展,获取新服务的操作实体。本发明可在兼容原通用类型的服务操作方法的同时,提供了可动态构造独有操作接口的实现方式并可使用扩展服务模块使用构造者模式进行新操作接口的拓展,可容纳几乎所有服务操作。
本发明具体实施过程中,开发管理软件过程中,根据开发服务器的业务和应用类型,新建服务注册表,并记录服务名称以及对应的配置文件地址;后定义通用服务操作接口,应包含应用服务的通用基本操作,之后在定义通用服务类,实现通用服务接口,其中抽离出的共同命令,根据注册变中的服务名为参数进行拼接执行,通过该类可完成对简单服务的操作;定义应用服务动态构造模块,以注册表服务类和命令执行对象为参数,在该模块内部对特定应用服务操作方法进行个性化定制重写,再将构造后的服务返回,完成动态构造;扩展服务模块的构造需要根据实际开发需求,使该模块主要是架构实现,即使用装饰着模式对服务进行扩展,再进行服务的实例化操作,完成对应用服务的操作过程。
以上对本发明所提供的一种适用服务器管理的应用服务管理方法及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (6)

1.一种适用服务器管理的应用服务管理方法,其特征在于,包括:
对于多个应用服务,提取应用服务的共同的服务命令;
在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;
对所述共同的服务命令定义统一的服务操作接口;所述对所述共同的服务命令定义统一的服务操作接口的执行者为通用服务接口模块,所述通用服务接口模块定义了用于操作服务器应用服务的通用操作接口,包括启动、关闭、重启和查看运行状态基本服务操作;
通过继承所述服务操作接口,新增扩展服务操作接口;
其中,所述通过继承所述服务操作接口,新增扩展服务操作接口之后,还包括:
以命令执行对象和应用服务注册表中的服务类型为构造方法,实现扩展服务操作接口,封装成新的服务实体类。
2.如权利要求1所述的方法,其特征在于,所述在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息之后,还包括:
依据注册表中记录的服务类型,对应用服务进行业务配置进行重载。
3.如权利要求2所述的方法,其特征在于,对所述共同的服务命令定义统一的服务操作接口之后,还包括:
利用所述服务操作接口将所述共同的命令封装成服务实体类。
4.一种适用服务器管理的应用服务管理装置,其特征在于,用于实现权利要求1至3中任意一项所述的方法,包括:
命令提取模块,用于对于多个应用服务,提取应用服务的共同的服务命令;
应用服务注册表模块,用于在应用服务注册表中记录每个应用服务的名称、服务类型和底层配置文件信息;
通用服务接口模块,用于对所述共同的服务命令定义统一的服务操作接口;所述通用服务接口模块定义了用于操作服务器应用服务的通用操作接口,包括启动、关闭、重启和查看运行状态基本服务操作;
扩展服务模块,用于通过继承所述服务操作接口,新增扩展服务操作接口;
其中,还包括:
应用服务动态构造模块,用于以命令执行对象和应用服务注册表中的服务类型为构造方法,实现扩展服务操作接口,封装成新的服务实体类。
5.如权利要求4所述的装置,其特征在于,还包括:
重载配置模块,用于依据注册表中记录的服务类型,对应用服务进行业务配置进行重载。
6.如权利要求5所述的装置,其特征在于,还包括:
通用服务实现模块,用于利用所述服务操作接口将所述共同的命令封装成服务实体类。
CN201710033117.3A 2017-01-18 2017-01-18 一种适用服务器管理的应用服务管理方法及装置 Active CN106802805B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710033117.3A CN106802805B (zh) 2017-01-18 2017-01-18 一种适用服务器管理的应用服务管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710033117.3A CN106802805B (zh) 2017-01-18 2017-01-18 一种适用服务器管理的应用服务管理方法及装置

Publications (2)

Publication Number Publication Date
CN106802805A CN106802805A (zh) 2017-06-06
CN106802805B true CN106802805B (zh) 2020-03-10

Family

ID=58984358

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710033117.3A Active CN106802805B (zh) 2017-01-18 2017-01-18 一种适用服务器管理的应用服务管理方法及装置

Country Status (1)

Country Link
CN (1) CN106802805B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107239290A (zh) * 2017-06-12 2017-10-10 郑州云海信息技术有限公司 一种应用服务的管理方法及装置
CN110515598A (zh) * 2019-08-30 2019-11-29 山东浪潮通软信息科技有限公司 一种基于命令行形式的集成服务的方法
CN113885863A (zh) * 2021-10-21 2022-01-04 上海波顿诺华智能科技有限公司 实现soa服务的方法、装置、电子设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102685231A (zh) * 2012-05-11 2012-09-19 许继集团有限公司 一种充换电站控制系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9208003B2 (en) * 2008-06-09 2015-12-08 International Business Machines Corporation Hypervisor to I/O stack conduit in virtual real memory
CN103475677B (zh) * 2012-06-07 2018-08-28 南京中兴软件有限责任公司 一种PaaS云平台中管理虚拟节点的方法、装置及系统
CN104580342A (zh) * 2014-08-01 2015-04-29 南京坦道信息科技有限公司 一种可扩展和完全自定义的统一接口服务平台
CN106254471A (zh) * 2016-08-09 2016-12-21 华为技术有限公司 一种异构云环境下资源统一调度方法及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102685231A (zh) * 2012-05-11 2012-09-19 许继集团有限公司 一种充换电站控制系统

Also Published As

Publication number Publication date
CN106802805A (zh) 2017-06-06

Similar Documents

Publication Publication Date Title
US9811360B2 (en) Dynamic determination of application server runtime classloading
CN104793946B (zh) 基于云计算平台的应用部署方法和系统
US9672140B1 (en) Processing special requests at dedicated application containers
CN108964968B (zh) 一种容器云环境下的服务接入管理方法和系统
US10564938B2 (en) Method and device of resource orchestration using an object-oriented language
US9996331B1 (en) Customized application state transition
WO2022016848A1 (zh) 一种根据服务角色的进行应用部署的方法及装置
WO2015055074A1 (zh) 动态加载和调用程序的方法及装置
US10594800B2 (en) Platform runtime abstraction
US9569181B2 (en) System and method for supporting an object oriented scripting tool
US20190079744A1 (en) Systems and methods for a policy-driven orchestration of deployment of distributed applications
CN106610839B (zh) 发布升级包的方法、轻量升级方法、装置及系统
US20070283344A1 (en) Programming model generic application deployment
CN112162753A (zh) 软件部署方法、装置、计算机设备和存储介质
CN103608773A (zh) 用于多节点应用的部署系统
CN102073536A (zh) 利用云平台实现模板编辑入库及批量生成虚拟机的方法
CN106802805B (zh) 一种适用服务器管理的应用服务管理方法及装置
CN111857801B (zh) 一种移动应用的构建方法
WO2024130997A1 (zh) 一种节点配置方法、装置、设备、非易失性可读存储介质及服务器
US20230401058A1 (en) Semantic functional wrappers of services
CN113094028A (zh) 一种Windows桌面程序开发框架、方法及相关组件
CN109343970B (zh) 基于应用程序的操作方法、装置、电子设备及计算机介质
CN106951288B (zh) 一种热更资源的开发、应用方法及装置
CN109660575B (zh) Nfv业务部署的实现方法和装置
Makki et al. Scalable and manageable customization of workflows in multi-tenant saas offerings

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