CN109683988B - 微服务启动方法、装置、计算机设备和存储介质 - Google Patents

微服务启动方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN109683988B
CN109683988B CN201811594794.3A CN201811594794A CN109683988B CN 109683988 B CN109683988 B CN 109683988B CN 201811594794 A CN201811594794 A CN 201811594794A CN 109683988 B CN109683988 B CN 109683988B
Authority
CN
China
Prior art keywords
component
micro services
configuration
mark
address
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
CN201811594794.3A
Other languages
English (en)
Other versions
CN109683988A (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.)
China Southern Power Grid Digital Enterprise Technology Guangdong Co ltd
Southern Power Grid Digital Grid Research Institute Co Ltd
Original Assignee
Southern Power Grid Digital Grid Research Institute 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 Southern Power Grid Digital Grid Research Institute Co Ltd filed Critical Southern Power Grid Digital Grid Research Institute Co Ltd
Priority to CN201811594794.3A priority Critical patent/CN109683988B/zh
Publication of CN109683988A publication Critical patent/CN109683988A/zh
Application granted granted Critical
Publication of CN109683988B publication Critical patent/CN109683988B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请涉及一种微服务启动方法、装置、计算机设备和存储介质。所述方法包括:获取微服务启动指令;所述微服务启动指令包括微服务标识;根据所述微服务标识,确定配置组件标识;获取所述配置组件标识对应的组件地址;根据所述组件地址,获取配置组件;将所述配置组件加载至所述微服务,以启动所述微服务。采用本方法,能够快速获取到各微服务所需配置的组件,避免了因组件数量多、组件之间调用复杂等情况造成的微服务启动异常,更加规范了微服务完成启动任务前,获取所需配置组件的配置过程,大大提高了微服务的启动效率。

Description

微服务启动方法、装置、计算机设备和存储介质
技术领域
本申请涉及微服务技术领域,特别是涉及一种微服务启动方法、装置、计算机设备和存储介质。
背景技术
传统信息化系统的典型架构是单块架构,即将应用程序的所有功能都打包成一个应用,每个应用是最小的交付、部署单元,应用部署后运行在同一进程中。但是,随着互联网技术的快速发展以及企业应用范围的扩展,单块架构逐渐显现出了一些问题,如各功能单元相互牵制导致的单项功能升级困难、单进程运行导致的系统扩展困难等。
微服务是一个新兴的软件架构,主要是将一个大型独立系统拆分为数十个小型服务,各微服务之间通过超文本传输协议(Hyper Text Transfer Protocol)进行调用的架构。由于微服务具备独立的运行进程,因此各微服务之间可独立部署,各微服务能够独立完成特定功能,对于系统扩展以及维护提供了很好的技术环境。
然而,传统的微服务启动方法,虽然可在系统中按需加载各独立组件,以完成微服务的启动任务,但是在组件数量庞大或是在微服务之间的调用关系复杂时,极易发生微服务启动异常的情况,从而降低微服务的启动效率。
因此,现有的微服务启动方法存在着启动效率低的问题。
发明内容
基于此,有必要针对上述微服务启动方法存在着启动效率低的技术问题,提供一种能够合理解决上述技术问题的一种微服务启动方法、装置、计算机设备和存储介质。
一种微服务启动方法,所述方法包括:
获取微服务启动指令;所述微服务启动指令包括微服务标识;
根据所述微服务标识,确定配置组件标识;
获取所述配置组件标识对应的组件地址;
根据所述组件地址,获取配置组件;
将所述配置组件加载至所述微服务,以启动所述微服务。
在其中一个实施例中,所述组件地址包括能力组件地址和/或公共组件地址。
在其中一个实施例中,当所述组件地址为所述能力组件地址时,所述根据所述组件地址,获取配置组件,包括:
获取与所述配置组件标识对应的配置组件;所述配置组件包括扩展容器组件、配置服务组件、认证鉴权组件、计费服务组件、会话管理组件以及服务监控组件。
在其中一个实施例中,当所述组件地址为所述公共组件地址时,所述根据所述组件地址,获取配置组件,包括:
获取与所述配置组件标识对应的配置组件;所述配置组件包括数据库访问组件、Hbase访问组件、Kafka消息服务组件、Redis缓存访问组件、对象存取组件以及内外网数据交换组件。
在其中一个实施例中,所述根据所述微服务标识,确定配置组件标识,包括:
获取多个候选微服务标识;所述多个候选微服务标识分别具有对应的候选组件标识;
将所述微服务标识与所述多个候选微服务标识进行匹配;
在所述多个候选微服务标识中,确定目标微服务标识;
提取所述目标微服务标识对应的候选组件标识,作为所述配置组件标识。
在其中一个实施例中,所述微服务启动指令包括用户标识,在所述将所述配置组件加载至所述微服务,以启动所述微服务之前,还包括:
对所述用户标识进行安全认证;
当所述用户标识符合预设的安全要求时,将所述配置组件加载至所述微服务。
在其中一个实施例中,在所述将所述配置组件加载至所述微服务之后,还包括:
将所述微服务注册至本地,以使所述微服务能够被调用。
一种微服务启动装置,所述装置包括:
指令获取模块,用于获取微服务启动指令;所述微服务启动指令包括微服务标识;
标识确定模块,用于根据所述微服务标识,确定配置组件标识;
地址获取模块,用于获取所述配置组件标识对应的组件地址;
组件获取模块,用于根据所述组件地址,获取配置组件;
组件加载模块,用于将所述配置组件加载至所述微服务,以启动所述微服务。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取微服务启动指令;所述微服务启动指令包括微服务标识;
根据所述微服务标识,确定配置组件标识;
获取所述配置组件标识对应的组件地址;
根据所述组件地址,获取配置组件;
将所述配置组件加载至所述微服务,以启动所述微服务。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取微服务启动指令;所述微服务启动指令包括微服务标识;
根据所述微服务标识,确定配置组件标识;
获取所述配置组件标识对应的组件地址;
根据所述组件地址,获取配置组件;
将所述配置组件加载至所述微服务,以启动所述微服务。
上述微服务启动方法、装置、计算机设备和存储介质,
附图说明
图1为一个实施例中微服务启动方法的应用环境图;
图2为一个实施例中微服务启动方法的流程示意图;
图3为一个实施例中微服务启动装置的结构框图;
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
微服务(Micro service Architecture)是一种软件架构,具体而言是一种将软件应用程序设计为可独立部署的服务套件的特定方式,即将单个应用程序作为一套小型服务开发的方法,每种应用程序都在自己的进程中运行,并与轻量级机制进行通信,该轻量级机制通常是HTTP(Hyper Text Transfer Protocol)资源API(Application ProgrammingInterface)。这些服务是围绕业务功能构建的,可以通过全自动部署机制独立部署。并且,这些服务的集中管理最少,可以用不同的编程语言编写,并使用不同的数据存储技术。
本发明所提供的,一种微服务启动方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行网络通信。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种微服务启动方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤S210,获取微服务启动指令;所述微服务启动指令包括微服务标识。
其中,微服务启动指令是由终端102发起,并发送至服务器104的一个指令,该指令信息可以包括有终端102提供的用户身份标识、微服务标识、微服务信息配置需求等。
其中,微服务标识可以是服务器104预先定义的一个标识,用于标识该微服务的身份信息,且该标识全局唯一。
具体实现中,终端102向服务器104发送微服务启动指令,服务器104接收并响应该指令,获取到微服务标识。
例如,终端102与服务器104建立通信连接后,服务器104可响应终端102发出的微服务启动指令,该指令中包括有用户身份标识以及微服务标识等信息,用于供服务器104在执行微服务启动指令时,利用指令中包含的信息执行相应操作。
步骤S220,根据所述微服务标识,确定配置组件标识。
其中,配置组件标识是指与微服务标识存在映射关系的标识,配置组件标识用于标识各项组件的身份,供服务器104通过该标识查询获取到各项组件。
具体实现中,服务器104获取到终端102发送的微服务标识之后,根据其预先建立存储的映射关系,即微服务标识与配置组件标识之间的映射关系,即可获取与该微服务标识关联的配置组件标识。
例如,与微服务标识为“数据服务中心”存在映射关系的配置组件标识有“服务监控组件”、“数据库访问组件”等,则根据“数据服务中心”即可确定与之关联的标识为“服务监控组件”、“数据库访问组件”。
步骤S230,获取所述配置组件标识对应的组件地址。
其中,组件地址是指存储在内网服务器104中,各项组件的存储单元编号,即存储地址。
具体实现中,各项配置组件标识与组件地址存在有一个映射关系,该映射关系的关联性由服务器104保存记录,当服务器104获取到配置组件标识后,可通过标识确定与之对应的组件地址,进而获取到当前待启动微服务所需加载组件的存储地址。
例如,标识为“服务监控组件”的组件地址为“http://10.92.182.241”。
步骤S240,根据所述组件地址,获取配置组件。
其中,组件是指一种可在数据处理链中传递数据的对象,例如,采集组件是用于定时从队列中读取数据,并将数据传递给其他组件的对象,而转发组件是用于将其他组件的输出结果传递给下游应用的对象。
其中,配置组件是以组件的形式被编译到各项微服务中,微服务运行期间,通过配置组件获取配置信息,以达到启动或变更各项微服务的运行行为。
具体实现中,可以存在有一个调用组件,服务器104根据微服务标识确定了配置组件标识后,将该配置组件标识传输至调用组件,由调用组件利用各组件地址获取对应配置组件。
例如,调用组件利用地址为“http://10.92.182.241”的组件地址,可调用标识为“服务监控组件”的组件。
步骤S250,将所述配置组件加载至所述微服务,以启动所述微服务。
具体实现中,服务器104获取到微服务对应所需配置的配置组件后,把配置组件加载至该微服务,即通过各配置组件获取到配置信息,并将该配置信息反馈至微服务,以使所有微服务完成配置之后能够启动。
需要说明的是,本发明提出对各组件的组件地址实施了预处理,即对所有的组件地址进行了分类,并建立了组件与组件地址之间的映射关系,而组件又与微服务之间存在有关联性,因此,可通过微服务标识快速确定其所需配置信息的组件位置,通过获取对应的配置组件完成配置。利用该预先设置的映射关系,可提高微服务启动的效率,避免因组件数量大、组件之间调用复杂的情况造成微服务启动异常。
上述微服务启动方法中,服务器通过获取终端发送微服务启动指令中微服务标识来确定其配置组件标识,并根据配置组件标识获取预先存储在服务器中的组件地址,利用组件地址获取配置组件,即可将获取到的配置组件加载至该微服务,以使微服务所需信息配置完整后,启动该微服务。采用本方法,能够快速获取到各微服务所需配置的组件,避免了因组件数量多、组件之间调用复杂等情况造成的微服务启动异常,更加规范了微服务完成启动任务前,获取所需配置组件的配置过程,大大提高了微服务的启动效率。
在一个实施例中,所述组件地址包括能力组件地址和/或公共组件地址。
其中,能力组件是指包含有多个不同功能组件,但各组件功能所述同类的组件集合。能力组件为微服务提供了平台支撑能力,如微服务的配置获取、安全访问认证、用户访问全链路路径跟踪等。
其中,公共组件同样也是各配置组件的组件集合,主要用于在微服务需要使用后端资源时,提供存储不同类型数据的数据库的资源接口。
其中,能力组件地址是指存储能力组件的一个开始地址,可通过该地址顺序获取到该能力组件中的各项配置组件。公共组件地址也如此,在本实施例中不再赘述。
需要说明的是,能力组件与公共组件的建立可以被封装在一个微服务运行框架中。组件分类依据不同组件类型、实施方法不同等,从性质上可分为埋点组件和常规组件。其中,埋点组件,是指让所有微服务只需付出编译发布的代价成本,即可获得运行依赖组件升级带来功能扩展的组件,其编译方式主要通过对组件版本的升级;常规组件,主要是指微服务投运后根据需要引入,并在业务代码或功能代码中引入的组件,这部分组件根据微服务的需要选用。
具体实现中,本发明提出根据不同组件的功能属性、用途等,将组件划分为能力组件和公共组件,在实际应用中,可根据具体要启动或变更的微服务,在两大组件集合中分别具体所需的各项配置组件,最终完成微服务的启动或变更任务。因此,可根据不同配置组件标识确定具体的组件地址。
例如,“数据服务”所需配置组件包括有归属于能力组件中的“配置服务组件”以及归属于公共组件中的“数据库访问组件”,则可根据配置组件标识确定具体的组件地址,此时,组件地址为能力组件地址和公共组件地址。
在一个实施例中,当所述组件地址为所述能力组件地址时,所述步骤S240,包括:
获取与所述配置组件标识对应的配置组件;所述配置组件包括扩展容器组件、配置服务组件、认证鉴权组件、计费服务组件、会话管理组件以及服务监控组件。
其中,扩展容器组件是提供运维人员,通过编写具体的业务代码逻辑,对Docker容器进行多功能组件扩展的对象,用于利用业务代码扩展Docker容器。
其中,配置服务组件是指用于为微服务提供信息配置服务的对象,即获取配置信息。
其中、认证鉴权组件是指用于对微服务的信息进行安全访问认证、鉴权的对象。
其中,计费服务组件是指用于对终端102用户的访问、微服务调用进行计费服务的对象。
其中,会话管理组件是指用于存储、提取、更新、管理会话记录的对象。
其中,服务监控组件是指用于对终端102用户的微服务调用、访问实现链路调用信息监控的对象。
具体实现中,若服务器104根据配置组件标识获取到的组件地址为能力组件地址,则可根据能力组件地址,获取到扩展容器组件、配置服务组件、认证鉴权组件、计费服务组件、会话管理组件以及服务监控组件此类组件,即可通过此各项配置组件获取到微服务启动的配置信息。
在一个实施例中,当所述组件地址为所述公共组件地址时,所述步骤S240,包括:
获取与所述配置组件标识对应的配置组件;所述配置组件包括数据库访问组件、Hbase访问组件、Kafka消息服务组件、Redis缓存访问组件、对象存取组件以及内外网数据交换组件。
其中,数据库访问组件是指用于对各数据库中的数据进行数据获取和传输的对象。
其中,Hbase访问组件是指用于提供对分布式数据库中的数据进行数据获取和传输的对象。
其中,Kafka消息服务组件是指用于对消息队列中的数据进行数据获取和传输的对象。
其中,Redis缓存访问组件是指用于对内存数据库中的数据进行数据获取和传输的对象。
其中,对象存取组件是指用于对组件进行存取的对象。
其中,内外网数据交换组件是指用于通过网络与外网数据实现交换功能的对象。
具体实现中,若服务器104根据配置组件标识获取到的组件地址为公共组件地址,则可根据公共组件地址,获取到数据库访问组件、Hbase访问组件、Kafka消息服务组件、Redis缓存访问组件、对象存取组件以及内外网数据交换组件此类组件,即可通过此各项配置组件获取到微服务启动的配置信息。
在一个实施例中,所述步骤S220,包括:
获取多个候选微服务标识;所述多个候选微服务标识分别具有对应的候选组件标识;将所述微服务标识与所述多个候选微服务标识进行匹配;在所述多个候选微服务标识中,确定目标微服务标识;提取所述目标微服务标识对应的候选组件标识,作为所述配置组件标识。
其中,候选微服务标识是指服务器104预先存储至数据库的标识。
其中,候选组件标识是指服务器104预先存储的、与候选微服务标识存在映射关系,可根据该映射关系由候选微服务标识获取到的标识。
其中,目标微服务标识是指在候选微服务标识中,与微服务标识匹配一致的标识。
具体实现中,服务器104以通过终端102发起启动指令微服务的微服务标识为目标源数据,在多个候选微服务标识中进行标识匹配工作,匹配到的候选微服务标识作为目标微服务标识,并提取该目标微服务标识对应的候选组件标识,作为配置组件标识。通过预先存储的微服务标识与组件标识之间的映射关系,服务器104即可通过各种微服务标识匹配到其对应存在的组件标识,从而获取各微服务所需配置的配置组件,信息配置完整后完成启动任务。
在一个实施例中,所述微服务启动指令包括用户标识,在所述步骤S250之前,还包括:
对所述用户标识进行安全认证;当所述用户标识符合预设的安全要求时,将所述配置组件加载至所述微服务。
其中,预设的安全要求是指对用户标识,即用户身份设置的一个有效范围。
具体实现中,服务器104将配置组件加载至微服务,实现对微服务的启动之前,要对启动该微服务的用户进行身份认证,认证方式可以是对用户标识的安全认证,即用户ID或用户IP的安全认证,也可以是通过其他方式进行认证,当用户标识符合预设的安全要求时,即可将配置组件加载至该微服务,以使该用户能够启动微服务。
在一个实施例中,在所述步骤S250之后,还包括:
将所述微服务注册至本地,以使所述微服务能够被调用。
具体实现中,服务器104获取到待启动的微服务的配置组件、配置信息,并发送至终端102启动该微服务之后,为了便于服务器104在某个场景下能够调用该微服务,即将其注册、存储记录在本地数据库中,以实现服务器104对该微服务的访问或调用。
根据本发明实施例提供的方案,服务器通过获取终端发送微服务启动指令中微服务标识来确定其配置组件标识,并根据配置组件标识获取预先存储在服务器中的组件地址,利用不同的组件地址获取配置组件,即可将获取到的配置组件加载至该微服务,以使微服务所需信息配置完整后,启动该微服务。其中,组件地址包括能力组件地址和公共组件地址,且不同地址中包括有不同配置组件地址。
此外,配置组件标识的获取,主要利用预先存储的微服务标识和组件标识之间的映射关系进行匹配获取,并在完成启动微服务的用户身份认证,且认证成功的情况下启动微服务,并将该微服务注册至本地,便于调用。采用本方法,能够快速获取到各微服务所需配置的组件,避免了因组件数量多、组件之间调用复杂等情况造成的微服务启动异常,更加规范了微服务完成启动任务前,获取所需配置组件的配置过程,大大提高了微服务的启动效率。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序并非必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图3所示,提供了一种微服务启动装置,包括指令获取模块310、标识确定模块320、地址获取模块330、组件获取模块340和组件加载模块350,其中:
指令获取模块310,用于获取微服务启动指令;所述微服务启动指令包括微服务标识;
标识确定模块320,用于根据所述微服务标识,确定配置组件标识;
地址获取模块330,用于获取所述配置组件标识对应的组件地址;
组件获取模块340,用于根据所述组件地址,获取配置组件;
组件加载模块350,用于将所述配置组件加载至所述微服务,以启动所述微服务。
根据本发明实施例提供的方案,服务器通过获取终端发送微服务启动指令中微服务标识来确定其配置组件标识,并根据配置组件标识获取预先存储在服务器中的组件地址,利用组件地址获取配置组件,即可将获取到的配置组件加载至该微服务,以使微服务所需信息配置完整后,启动该微服务。采用本方案,能够快速获取到各微服务所需配置的组件,避免了因组件数量多、组件之间调用复杂等情况造成的微服务启动异常,更加规范了微服务完成启动任务前,获取所需配置组件的配置过程,大大提高了微服务的启动效率。
在一个实施例中,所述组件地址包括能力组件地址和/或公共组件地址。
在一个实施例中,当所述组件地址为所述能力组件地址时,所述组件获取模块340包括:
对应组件获取子模块,用于获取与所述配置组件标识对应的配置组件;所述配置组件包括扩展容器组件、配置服务组件、认证鉴权组件、计费服务组件、会话管理组件以及服务监控组件。
在一个实施例中,当所述组件地址为所述公共组件地址时,所述组件获取模块340包括:
组件获取子模块,用于获取与所述配置组件标识对应的配置组件;所述配置组件包括数据库访问组件、Hbase访问组件、Kafka消息服务组件、Redis缓存访问组件、对象存取组件以及内外网数据交换组件。
在一个实施例中,所述标识确定模块320,包括:
候选标识获取子模块,用于获取多个候选微服务标识;所述多个候选微服务标识分别具有对应的候选组件标识;标识匹配子模块,用于将所述微服务标识与所述多个候选微服务标识进行匹配;目标标识确定子模块,用于在所述多个候选微服务标识中,确定目标微服务标识;标识提取子模块,用于提取所述目标微服务标识对应的候选组件标识,作为所述配置组件标识。
在一个实施例中,所述微服务启动指令包括用户标识;所述组件加载模块350包括:
安全认证子模块,用于对所述用户标识进行安全认证;组件加载子模块,用于当所述用户标识符合预设的安全要求时,将所述配置组件加载至所述微服务。
在一个实施例中,所述组件加载模块350包括:
服务注册子模块,用于将所述微服务注册至本地,以使所述微服务能够被调用。
根据本发明实施例提供的方案,服务器通过获取终端发送微服务启动指令中微服务标识来确定其配置组件标识,并根据配置组件标识获取预先存储在服务器中的组件地址,利用不同的组件地址获取配置组件,即可将获取到的配置组件加载至该微服务,以使微服务所需信息配置完整后,启动该微服务。其中,组件地址包括能力组件地址和公共组件地址,且不同地址中包括有不同配置组件地址。
此外,配置组件标识的获取,主要利用预先存储的微服务标识和组件标识之间的映射关系进行匹配获取,并在完成启动微服务的用户身份认证,且认证成功的情况下启动微服务,并将该微服务注册至本地,便于调用。采用本方案,能够快速获取到各微服务所需配置的组件,避免了因组件数量多、组件之间调用复杂等情况造成的微服务启动异常,更加规范了微服务完成启动任务前,获取所需配置组件的配置过程,大大提高了微服务的启动效率。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储标识信息和设备信息。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时实现一种微服务启动方法。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取微服务启动指令;所述微服务启动指令包括微服务标识;
根据所述微服务标识,确定配置组件标识;
获取所述配置组件标识对应的组件地址;
根据所述组件地址,获取配置组件;
将所述配置组件加载至所述微服务,以启动所述微服务。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述组件地址包括能力组件地址和/或公共组件地址。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取与所述配置组件标识对应的配置组件;所述配置组件包括扩展容器组件、配置服务组件、认证鉴权组件、计费服务组件、会话管理组件以及服务监控组件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取与所述配置组件标识对应的配置组件;所述配置组件包括数据库访问组件、Hbase访问组件、Kafka消息服务组件、Redis缓存访问组件、对象存取组件以及内外网数据交换组件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取多个候选微服务标识;所述多个候选微服务标识分别具有对应的候选组件标识;将所述微服务标识与所述多个候选微服务标识进行匹配;在所述多个候选微服务标识中,确定目标微服务标识;提取所述目标微服务标识对应的候选组件标识,作为所述配置组件标识。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对所述用户标识进行安全认证;当所述用户标识符合预设的安全要求时,将所述配置组件加载至所述微服务。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将所述微服务注册至本地,以使所述微服务能够被调用。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取微服务启动指令;所述微服务启动指令包括微服务标识;
根据所述微服务标识,确定配置组件标识;
获取所述配置组件标识对应的组件地址;
根据所述组件地址,获取配置组件;
将所述配置组件加载至所述微服务,以启动所述微服务。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述组件地址包括能力组件地址和/或公共组件地址。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取与所述配置组件标识对应的配置组件;所述配置组件包括扩展容器组件、配置服务组件、认证鉴权组件、计费服务组件、会话管理组件以及服务监控组件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取与所述配置组件标识对应的配置组件;所述配置组件包括数据库访问组件、Hbase访问组件、Kafka消息服务组件、Redis缓存访问组件、对象存取组件以及内外网数据交换组件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取多个候选微服务标识;所述多个候选微服务标识分别具有对应的候选组件标识;将所述微服务标识与所述多个候选微服务标识进行匹配;在所述多个候选微服务标识中,确定目标微服务标识;提取所述目标微服务标识对应的候选组件标识,作为所述配置组件标识。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对所述用户标识进行安全认证;当所述用户标识符合预设的安全要求时,将所述配置组件加载至所述微服务。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将所述微服务注册至本地,以使所述微服务能够被调用。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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所述的方法,其特征在于,当所述组件地址为公共组件地址时,所述根据所述组件地址,获取配置组件,包括:
获取与所述配置组件标识对应的配置组件;所述配置组件包括数据库访问组件、Hbase访问组件、Kafka消息服务组件、Redis缓存访问组件、对象存取组件以及内外网数据交换组件。
5.根据权利要求1所述的方法,其特征在于,所述根据所述微服务标识,确定配置组件标识,包括:
获取多个候选微服务标识;所述多个候选微服务标识分别具有对应的候选组件标识;
将所述微服务标识与所述多个候选微服务标识进行匹配;
在所述多个候选微服务标识中,确定目标微服务标识;
提取所述目标微服务标识对应的候选组件标识,作为所述配置组件标识。
6.根据权利要求1所述的方法,其特征在于,所述微服务启动指令包括用户标识;在所述将所述配置组件加载至所述微服务,以启动所述微服务之前,还包括:
对所述用户标识进行安全认证;
当所述用户标识符合预设的安全要求时,将所述配置组件加载至所述微服务。
7.根据权利要求1所述的方法,其特征在于,在所述将所述配置组件加载至所述微服务之后,还包括:
将所述微服务注册至本地,以使所述微服务能够被调用。
8.一种微服务启动装置,其特征在于,所述装置包括:
指令获取模块,用于获取微服务启动指令;所述微服务启动指令包括微服务标识;
标识确定模块,用于根据所述微服务标识,确定配置组件标识;
地址获取模块,用于获取所述配置组件标识对应的组件地址;
组件获取模块,用于根据所述组件地址,获取配置组件;
组件加载模块,用于将所述配置组件加载至所述微服务,以启动所述微服务。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN201811594794.3A 2018-12-25 2018-12-25 微服务启动方法、装置、计算机设备和存储介质 Active CN109683988B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811594794.3A CN109683988B (zh) 2018-12-25 2018-12-25 微服务启动方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811594794.3A CN109683988B (zh) 2018-12-25 2018-12-25 微服务启动方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN109683988A CN109683988A (zh) 2019-04-26
CN109683988B true CN109683988B (zh) 2019-10-18

Family

ID=66189451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811594794.3A Active CN109683988B (zh) 2018-12-25 2018-12-25 微服务启动方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN109683988B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306487B (zh) * 2019-08-21 2024-06-04 北京字节跳动网络技术有限公司 一种埋点数据上报方法、装置、设备及存储介质
CN110659045B (zh) * 2019-08-30 2022-03-15 电子科技大学 一种软件化雷达实时动态更新系统
CN110661662B (zh) * 2019-09-26 2022-04-05 北京北信源软件股份有限公司 一种轻量级的微服务配置方法
CN110727477B (zh) * 2019-10-12 2023-03-24 未鲲(上海)科技服务有限公司 组件加载方法、装置、计算机设备和存储介质
CN110750314A (zh) * 2019-10-23 2020-02-04 杭州安恒信息技术股份有限公司 微服务终端的命令执行方法和系统
CN111083200B (zh) * 2019-11-25 2022-07-05 武汉联影医疗科技有限公司 智能服务网络系统
CN111190734B (zh) * 2019-12-30 2023-08-18 杭州涂鸦信息技术有限公司 一种微服务路由方法和系统及可读存储介质
CN111443920B (zh) * 2020-03-25 2023-10-13 北京奇艺世纪科技有限公司 一种框架迁移方法及装置
CN111835789B (zh) * 2020-07-28 2021-12-03 北京金山云网络技术有限公司 一种服务鉴权方法、装置、设备、系统及存储介质
CN114461291A (zh) * 2020-10-22 2022-05-10 北京国双科技有限公司 应用程序组件调用方法、装置、电子设备及存储介质
CN112965765B (zh) * 2021-02-02 2024-01-16 深圳市优必选科技股份有限公司 服务调用方法、装置、电子设备及存储介质
CN114416224B (zh) * 2022-03-25 2022-07-12 共道网络科技有限公司 一种在多微服务环境下调用微服务的方法及装置
CN115242863B (zh) * 2022-04-20 2024-03-26 广东数夫软件有限公司 一种微服务应用方法及微服务架构系统
CN116389103B (zh) * 2023-03-30 2024-01-26 成都道客数字科技有限公司 一种基于角色权限的云原生微服务分布式鉴权方法和系统
CN118193082A (zh) * 2024-04-02 2024-06-14 北京基调网络股份有限公司 一种Java探针快速加载插件的方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293704A (zh) * 2016-07-26 2017-01-04 北京北森云计算股份有限公司 多语言云编译的动态微服务编辑方法、装置和服务器
CN107168746A (zh) * 2017-05-27 2017-09-15 北京中电普华信息技术有限公司 一种微服务生成方法及装置
CN108206852A (zh) * 2016-12-20 2018-06-26 杭州华为数字技术有限公司 一种微服务框架下的基于会话的服务实例管理方法及设备
CN108540529A (zh) * 2018-03-07 2018-09-14 江苏电力信息技术有限公司 一种基于微服务架构下的不重启动态参数刷新方法
US20180321996A1 (en) * 2017-05-04 2018-11-08 Microsoft Technology Licensing, Llc Micro- service framework derived from third-party apps
CN108804154A (zh) * 2018-05-31 2018-11-13 天津大学 一种基于客户端微服务的app自动协同方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107888681A (zh) * 2017-11-09 2018-04-06 北京中电普华信息技术有限公司 一种业务流程处理方法及装置
CN108052374B (zh) * 2017-12-29 2021-08-31 郑州云海信息技术有限公司 一种部署容器微服务的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293704A (zh) * 2016-07-26 2017-01-04 北京北森云计算股份有限公司 多语言云编译的动态微服务编辑方法、装置和服务器
CN108206852A (zh) * 2016-12-20 2018-06-26 杭州华为数字技术有限公司 一种微服务框架下的基于会话的服务实例管理方法及设备
US20180321996A1 (en) * 2017-05-04 2018-11-08 Microsoft Technology Licensing, Llc Micro- service framework derived from third-party apps
CN107168746A (zh) * 2017-05-27 2017-09-15 北京中电普华信息技术有限公司 一种微服务生成方法及装置
CN108540529A (zh) * 2018-03-07 2018-09-14 江苏电力信息技术有限公司 一种基于微服务架构下的不重启动态参数刷新方法
CN108804154A (zh) * 2018-05-31 2018-11-13 天津大学 一种基于客户端微服务的app自动协同方法

Also Published As

Publication number Publication date
CN109683988A (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
CN109683988B (zh) 微服务启动方法、装置、计算机设备和存储介质
CN110290212B (zh) 服务调用记录方法、装置、计算机设备和存储介质
CN109474578B (zh) 报文消息校验方法、装置、计算机设备和存储介质
US11233826B2 (en) System and method of microservice-based application deployment with automating authorization configuration
CN111475376B (zh) 处理测试数据的方法、装置、计算机设备和存储介质
CN109788032A (zh) 镜像文件的获取方法、装置、计算机设备和存储介质
CN109586948A (zh) 更新系统配置数据的方法、装置、计算机设备和存储介质
CN110633160A (zh) 接口调用方法、装置、计算机设备和存储介质
CN109933439B (zh) 消息传输方法、装置、计算机设备和存储介质
CN110099047B (zh) 注册信息处理方法、装置、计算机设备和存储介质
CN111193716B (zh) 业务数据调用方法、装置、计算机设备和存储介质
CN110209652A (zh) 数据表迁移方法、装置、计算机设备和存储介质
CN109726134B (zh) 接口测试方法和系统
CN111142933B (zh) 工作流生成方法、装置、计算机设备和存储介质
CN110708247B (zh) 消息路由方法、装置、计算机设备和存储介质
CN109039751A (zh) 配置路由的方法、装置、计算机设备和存储介质
CN114153626A (zh) 一种服务集成过程抽象的方法、装置和计算机设备
CN115867891A (zh) 动态整合应用程序的方法及其软件系统与机器
CN108595280B (zh) 接口适配方法、装置、计算机设备和存储介质
CN115794927B (zh) 业务功能扩展方法和系统
CN109787963A (zh) 业务办理方法、装置、计算机设备和存储介质
CN110138715A (zh) 实名认证方法、装置、计算机设备及存储介质
CN112752258A (zh) 一种eSIM卡的开通方法、手机终端及业务受理系统
CN112583890B (zh) 基于企业办公系统的消息推送方法、装置和计算机设备
CN109474762A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 511458 Room 1301, Chengtou Building, 106 Fengze East Road, Nansha District, Guangzhou City, Guangdong Province (self-compiled 1301-12159)

Applicant after: Southern Power Grid Digital Grid Research Institute Co.,Ltd.

Address before: 511458 Room 1301, Chengtou Building, 106 Fengze East Road, Nansha District, Guangzhou City, Guangdong Province (self-compiled 1301-12159)

Applicant before: DINGXIN INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 1301, Chengtou building, No. 106, Fengze East Road, Nansha District, Guangzhou City, Guangdong Province

Patentee after: Southern Power Grid Digital Grid Research Institute Co.,Ltd.

Country or region after: China

Address before: Room 1301, Chengtou building, No. 106, Fengze East Road, Nansha District, Guangzhou City, Guangdong Province

Patentee before: Southern Power Grid Digital Grid Research Institute Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240910

Address after: Yunsheng Science Park, No. 11 Spectral Middle Road, Huangpu District, Guangzhou City, Guangdong Province, 510700

Patentee after: China Southern Power Grid Digital Enterprise Technology (Guangdong) Co.,Ltd.

Country or region after: China

Address before: Room 1301, Chengtou building, No. 106, Fengze East Road, Nansha District, Guangzhou City, Guangdong Province

Patentee before: Southern Power Grid Digital Grid Research Institute Co.,Ltd.

Country or region before: China