首页 / 专利库 / 电脑零配件 / 计算机系统 / 软件 / 应用软件 / 一种基于微服务架构的应用开发方法及系统

一种基于微服务架构的应用开发方法及系统

阅读:120发布:2020-05-08

专利汇可以提供一种基于微服务架构的应用开发方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 揭示了一种基于微服务架构的应用开发方法及系统。所述方法包括:接收用于构建待构建应用的事件 请求 ,解析该事件请求,得到待构建应用的服务场景;在微服务 数据库 中查找与该服务场景相匹配的目标微服务,并基于目标微服务构建待构建应用。此方法下,能够缩短应用 软件 的开发周期,提高应用开发效率。,下面是一种基于微服务架构的应用开发方法及系统专利的具体信息内容。

1.一种基于微服务架构的应用开发方法,其特征在于,包括:
接收用于构建待构建应用的事件请求
解析所述事件请求,得到所述待构建应用的服务场景;
在微服务数据库中查找与所述服务场景相匹配的目标微服务;
基于所述目标微服务构建所述待构建应用。
2.根据权利要求1所述的方法,其特征在于,所述解析所述事件请求,得到所述待构建应用的服务场景,包括:
提取所述事件请求的关键字;
根据所述关键字识别所述待构建应用的属性类别;
依据所述待构建应用的属性类型确定所述待构建应用的服务场景。
3.根据权利要求1或2所述的方法,其特征在于,所述解析所述事件请求,得到所述待构建应用的服务场景之后,所述方法还包括:
获取所述服务场景对应的场景名称;
在服务场景模板库中搜索所述场景名称,并根据搜索结果判断是否存在与所述场景名称相匹配的目标服务场景模板;
如果是,基于所述目标服务场景模板构建所述待构建应用。
4.根据权利要求1 3任一项所述的方法,其特征在于,所述在微服务数据库中查找与所~
述服务场景相匹配的目标微服务之前,所述方法还包括:
向微服务数据库发送用户权限查询指令,以获取所述事件请求对应的用户终端在所述微服务数据库中各个数据分区的权限信息;
所述在微服务数据库中查找与所述服务场景相匹配的目标微服务,包括:
根据所述用户终端在各个所述数据分区的权限信息,查找与所述服务场景相匹配的目标微服务。
5.一种基于微服务架构的应用开发系统,其特征在于,包括:
接收单元,用于接收用于构建待构建应用的事件请求;
解析单元,用于解析所述事件请求,得到所述待构建应用的服务场景;
查找单元,用于在微服务数据库中查找与所述服务场景相匹配的目标微服务;
构建单元,用于基于所述目标微服务构建所述待构建应用。
6.根据权利要求5所述的应用开发系统,其特征在于,所述解析单元包括:
提取子单元,用于提取所述事件请求的关键字;
识别子单元,用于根据所述关键字识别所述待构建应用的属性类别;
定子单元,用于依据所述待构建应用的属性类型确定所述待构建应用的服务场景。
7.根据权利要求5或6所述的应用开发系统,其特征在于,所述应用开发系统还包括:
获取单元,用于在所述解析单元解析所述事件请求,得到所述待构建应用的服务场景之后,获取所述服务场景对应的场景名称;
搜索单元,用于在服务场景模板库中搜索所述场景名称,得到搜索结果;
判断单元,用于根据所述搜索结果判断是否存在与所述场景名称相匹配的目标服务场景模板;
所述构建单元,还用于在所述判断单元判断出所述服务场景模板库中不存在与所述场景名称相匹配的目标服务场景模板之后,基于所述目标服务场景模板构建所述待构建应用。
8.根据权利要求5 7任一项所述的应用开发系统,其特征在于,所述应用开发系统还包~
括:
发送单元,用于向微服务数据库发送用户权限查询指令,以获取所述事件请求对应的用户终端在所述微服务数据库中各个数据分区的权限信息;
所述查找单元,具体用于在所述发送单元向微服务数据库发送用户权限查询指令,以获取所述事件请求对应的用户终端在所述微服务数据库中各个数据分区的权限信息之后,根据所述用户终端在各个所述数据分区的权限信息,查找与所述服务场景相匹配的目标微服务。

说明书全文

一种基于微服务架构的应用开发方法及系统

技术领域

[0001] 本发明涉及计算机技术领域,特别涉及一种基于微服务架构的应用开发方法及系统。

背景技术

[0002] 随着信息科学的不断发展,互联网技术融入大众生活的方方面面,依托互联网技术开发的软件产品更是层出不穷,给人们的工作和生活提供了诸多便利。目前,大多数软件产品采用传统的整体式架构(Monolithic Architecture)开发模式。这种传统的开发模式代码复用率低,需要进行大量重复性劳动,容易出现开发周期长、开发效率低下的问题。
[0003] 可见,为了提升软件产品的竞争,适应互联网的高速发展趋势,提高如何缩短应用软件的开发周期、提高应用软件的开发效率成为当前急需解决的问题。

发明内容

[0004] 为了解决相关技术中存在的应用软件的开发周期长、开发效率低的技术问题,本发明提供了一种基于微服务架构的应用开发方法及系统。
[0005] 本发明实施例第一方面公开了一种基于微服务架构的应用开发方法,所述方法包括:接收用于构建待构建应用的事件请求
解析所述事件请求,得到所述待构建应用的服务场景;
在微服务数据库中查找与所述服务场景相匹配的目标微服务;
基于所述目标微服务构建所述待构建应用。
[0006] 作为一种可选的实施方式,在本发明实施例第一方面中,所述解析所述事件请求,得到所述待构建应用的服务场景,包括:提取所述事件请求的关键字;
根据所述关键字识别所述待构建应用的属性类别;
依据所述待构建应用的属性类型确定所述待构建应用的服务场景。
[0007] 作为一种可选的实施方式,在本发明实施例第一方面中,所述解析所述事件请求,得到所述待构建应用的服务场景之后,所述方法还包括:获取所述服务场景对应的场景名称;
在服务场景模板库中搜索所述场景名称,并根据搜索结果判断是否存在与所述场景名称相匹配的目标服务场景模板;
如果是,基于所述目标服务场景模板构建所述待构建应用。
[0008] 作为一种可选的实施方式,在本发明实施例第一方面中,所述在微服务数据库中查找与所述服务场景相匹配的目标微服务之前,所述方法还包括:向微服务数据库发送用户权限查询指令,以获取所述事件请求对应的用户终端在所述微服务数据库中各个数据分区的权限信息;
所述在微服务数据库中查找与所述服务场景相匹配的目标微服务,包括:
根据所述用户终端在各个所述数据分区的权限信息,查找与所述服务场景相匹配的目标微服务。
[0009] 本发明实施例第二方面公开了一种基于微服务架构的应用开发系统,包括:接收单元,用于接收用于构建待构建应用的事件请求;
解析单元,用于解析所述事件请求,得到所述待构建应用的服务场景;
查找单元,用于在微服务数据库中查找与所述服务场景相匹配的目标微服务;
构建单元,用于基于所述目标微服务构建所述待构建应用。
[0010] 作为一种可选的实施方式,在本发明实施例第二方面中,所述解析单元包括:提取子单元,用于提取所述事件请求的关键字;
识别子单元,用于根据所述关键字识别所述待构建应用的属性类别;
定子单元,用于依据所述待构建应用的属性类型确定所述待构建应用的服务场景。
[0011] 作为一种可选的实施方式,在本发明实施例第二方面中,所述应用开发系统还包括:获取单元,用于在所述解析单元解析所述事件请求,得到所述待构建应用的服务场景之后,获取所述服务场景对应的场景名称;
搜索单元,用于在服务场景模板库中搜索所述场景名称,得到搜索结果;
判断单元,用于根据所述搜索结果判断是否存在与所述场景名称相匹配的目标服务场景模板;
所述构建单元,还用于在所述判断单元判断出所述服务场景模板库中不存在与所述场景名称相匹配的目标服务场景模板之后,基于所述目标服务场景模板构建所述待构建应用。
[0012] 作为一种可选的实施方式,在本发明实施例第二方面中,所述应用开发系统还包括:发送单元,用于向微服务数据库发送用户权限查询指令,以获取所述事件请求对应的用户终端在所述微服务数据库中各个数据分区的权限信息;
所述查找单元,具体用于在所述发送单元向微服务数据库发送用户权限查询指令,以获取所述事件请求对应的用户终端在所述微服务数据库中各个数据分区的权限信息之后,根据所述用户终端在各个所述数据分区的权限信息,查找与所述服务场景相匹配的目标微服务。
[0013] 本发明实施例第三方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面公开的一种基于微服务架构的应用开发方法。
[0014] 本发明实施例第四方面公开一种电子设备,所述电子设备包括:处理器;
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如前所述的方法。
[0015] 本发明的实施例提供的技术方案可以包括以下有益效果:本发明所提供的基于微服务架构的应用开发方法包括如下步骤,接收用于构建待构建应用的事件请求,解析该事件请求,得到待构建应用的服务场景;在微服务数据库中查找与该服务场景相匹配的目标微服务,并基于目标微服务构建待构建应用。
[0016] 此方法下,基于用户的事件请求确定待构建应用的服务场景,并进一步通过匹配服务场景的方式确定用于构建应用的微服务,既能够使得开发的应用符合用户的实际需求,同时也能够基于微服务架构将应用分割为一系列细小的服务,使得每个服务专注于单一业务功能、服务之间边界清晰,灵活性强,极大地缩短了应用开发周期,提升应用开发效率。
[0017] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。附图说明
[0018] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
[0019] 图1是根据一示例性实施例示出的一种基于微服务架构的应用开发方法的流程图;图2是根据一示例性实施例示出的另一种基于微服务架构的应用开发方法的流程图;
图3是根据一示例性实施例示出的一种基于微服务架构的应用开发系统的框图
图4是根据一示例性实施例示出的另一种基于微服务架构的应用开发系统的框图。

具体实施方式

[0020] 这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
[0021] 图1是根据一示例性实施例示出的一种基于微服务架构的应用开发方法的流程图。如图1所示,此方法包括以下步骤。
[0022] 步骤101,应用开发系统接收用于构建待构建应用的事件请求。
[0023] 本发明实施例中,用户可以通过用户终端向应用开发系统发送针对待构建应用的事件请求,可选的,该事件请求可以包括但不限于用户需求信息以及业务需求信息。
[0024] 步骤102,应用开发系统解析该事件请求,得到待构建应用的服务场景。
[0025] 本发明实施例中,可选的,上述服务场景可以是业务场景,也可以是由多个子业务场景组成的组合场景,本发明实施例不做限定。
[0026] 作为一种可选的实施方式,应用开发系统可以通过解析该事件请求,得到待构建应用的场景描述信息,根据场景描述信息确定待构建应用的服务场景;其中,服务场景的数量可以是一个或者多个,本发明实施例不做限定。
[0027] 作为另一种可选的实施方式,应用开发系统解析该事件请求,得到待构建应用的服务场景,可以包括:提取事件请求的关键字;根据关键字识别待构建应用的属性类别;依据待构建应用的属性类型确定待构建应用的服务场景。
[0028] 本发明实施例中,举例来说,上述事件请求的关键字为“买”、“ 卖”、“商品”,因此可以识别出该待构建应用的属性类别为购物;因此,可以确定该待构建应用的服务场景为电商购物。
[0029] 作为又一种可选的实施方式,应用开发系统在解析事件请求,得到待构建应用的服务场景之后,还可以包括以下步骤:获取服务场景对应的场景名称;在服务场景模板库中搜索场景名称,并根据搜索结果判断是否存在与场景名称相匹配的目标服务场景模板;如果是,基于目标服务场景模板构建待构建应用;如果否,触发执行步骤103。
[0030] 本发明实施例中,可选的,应用开发系统在获取服务场景对应的场景名称之前,还可以判断服务场景的类型是否为组合场景,如果该服务场景的类型为组合场景,那么,可以进一步获取服务场景对应的场景名称,并在服务场景模板库中搜索场景名称,并根据搜索结果判断是否存在与场景名称相匹配的目标服务场景模板;如果是,基于目标服务场景模板构建待构建应用;如果否,触发执行步骤103。其中,服务场景模板可以是由现有软件抽象而成,它可以包括多个微服务。举例来说,技术人员想要开发一款预约餐厅就餐的应用软件时,首先可以确定需要通过餐厅推荐、餐厅预约、进行就餐以及结束就餐四个步骤来实现这个餐厅预约软件。此时,可以认为,这个应用的服务场景即为场景名称为餐厅预约的服务场景,而上述四个步骤则对应四个子业务场景。那么进一步的,可以在服务场景模板库中搜索该服务场景的场景名称“餐厅预约”,如果搜索结果显示该服务场景模板库中存储有名为“餐厅预约”的目标服务场景模板,则可以根据该目标服务场景模板构建该餐厅预约应用。其中,上述每个步骤所能实现服务即该步骤对应子业务场景的服务功能。可见,本发明实施例,通过与预先存储的服务场景模板进行匹配,减少了服务功能复杂的应用的开发时间,进一步提高了开发效率。
[0031] 作为又一种可选的实施方式,应用开发系统在解析事件请求,得到待构建应用的服务场景之后,还可以对上述服务场景进行进一步解析,得到场景解析结果;其中,该场景解析结果可以包括业务流程描述信息和用户需求描述信息;再利用解析结果在服务场景模板库中查找符合用户要求的目标服务场景模板。
[0032] 步骤103,应用开发系统在微服务数据库中查找与服务场景相匹配的目标微服务。
[0033] 本发明实施例中,上述微服务数据库中存储有若干种微服务,可选的,该微服务指的是在开发不同应用软件的过程中可以被重复使用的服务。为了避免重复开发微服务所带来的时间成本和人力成本,本发明实施例可以预先对各种微服务进行开发,然后将开发完成的各种微服务集成到上述微服务数据库中。当应用开发需要使用任一种微型服务时,可以通过服务提供接口从上述微服务数据库中查找相应的微服务,而无需重新进行微服务的开发,极大地提高了应用开发效率。进一步可选的,上述微服务可以是若干个微服务架构下所有应用组件所包含的公共组件,本发明实施例不做限定。
[0034] 本发明实施例中,每个服务场景(业务场景)可以作为独立的应用去调用核心服务,实现组件化、松耦合、自治和去中心化,每个微服务能够独立被部署并运行在一个进程内,这种部署方式能够提升代码组织方式以及发布节奏的灵活性。
[0035] 步骤104,应用开发系统基于该目标微服务构建待构建应用。
[0036] 本发明实施例中,应用开发系统可以通过微服务框架实现若干目标微服务之间的注册、发现、调用和监控,从而完成对上述待构建应用的构建任务。目标微服务的数量可以是一个或者多个,本发明实施例不做限定。
[0037] 可见,实施图1所描述的基于微服务架构的应用开发方法,基于用户的事件请求确定待构建应用的服务场景,并进一步通过匹配服务场景的方式确定用于构建应用的微服务,既能够使得开发的应用符合用户的实际需求,同时也能够基于微服务架构将应用分割为一系列细小的服务,使得每个服务专注于单一业务功能、服务之间边界清晰,灵活性强,极大地缩短了应用开发周期,提升应用开发效率。
[0038] 图2是根据另一示例性实施例示出的一种基于微服务架构的应用开发方法的流程图。如图2所示,该基于微服务架构的应用开发方法包括步骤201 202,针对步骤201 202的~ ~描述,请参照上述实施例一中针对步骤101 102的详细描述,本发明实施例不再赘述。
~
[0039] 步骤203,应用开发系统向微服务数据库发送用户权限查询指令,以获取事件请求对应的用户终端在微服务数据库中各个数据分区的权限信息。
[0040] 步骤204,应用开发系统根据用户终端在各个数据分区的权限信息,查找与服务场景相匹配的目标微服务。
[0041] 本发明实施例中,应用开发系统可以对微服务数据库的存储空间进行划分,并按照预设的分类规则将微服务分别存储在微服务数据库的各个数据分区中。其中,不同的数据分区所对应的微服务的使用权限不同。应用开发系统向微服务数据库获取上述用户终端对于微服务数据库的权限信息,具体是对与该台用户终端对应的用户账号是否已经合法购买了相应微服务的使用权限进行判断。如果该用户账号已经合法购买了某种微服务的使用权限,则登陆了该用户账号的用户终端 便具有了使用该微型服务的权限。可见,本发明实施例,能够通过对微服务存储区域设置不同的权限信息,实现更小数据粒度的权限管理,进而有效地保障了数据的安全性,实现对数据权限的准确控制。
[0042] 步骤205,应用开发系统基于该目标微服务构建待构建应用。
[0043] 可见,实施图2所描述的基于微服务架构的应用开发方法,基于用户的事件请求确定待构建应用的服务场景,并进一步通过匹配服务场景的方式确定用于构建应用的微服务,既能够使得开发的应用符合用户的实际需求,同时也能够基于微服务架构将应用分割为一系列细小的服务,使得每个服务专注于单一业务功能、服务之间边界清晰,灵活性强,极大地缩短了应用开发周期,提升应用开发效率。
[0044] 以下是本发明的装置实施例。
[0045] 图3是根据一示例性实施例示出的一种基于微服务架构的应用开发系统的框图。如图3所示,该应用开发系统包括:
接收单元301,用于接收用于构建待构建应用的事件请求,并将该事件请求提供给解析单元302。
[0046] 解析单元302,用于解析事件请求,得到待构建应用的服务场景,并提供给查找单元303。
[0047] 查找单元303,用于在微服务数据库中查找与服务场景相匹配的目标微服务,并触发构建单元304启动。
[0048] 构建单元304,用于基于目标微服务构建待构建应用。
[0049] 可见,实施图3所描述的应用开发系统,基于用户的事件请求确定待构建应用的服务场景,并进一步通过匹配服务场景的方式确定用于构建应用的微服务,既能够使得开发的应用符合用户的实际需求,同时也能够基于微服务架构将应用分割为一系列细小的服务,使得每个服务专注于单一业务功能、服务之间边界清晰,灵活性强,极大地缩短了应用开发周期,提升应用开发效率。
[0050] 请参阅图4,图4根据一示例性实施例示出的另一种基于微服务架构的应用开发系统的框图,其中,图4所示的系统是由图3所示的系统进一步进行优化得到的。与图3所示的应用开发系统相比较,在图4所示的应用开发系统中,上述解析单元302可以包括:提取子单元3021,用于提取事件请求的关键字,并提供给识别子单元3022。
[0051] 识别子单元3022,用于根据关键字识别待构建应用的属性类别,并将该属性类别提供给确定子单元3023。
[0052] 确定子单元3023,用于依据待构建应用的属性类型确定待构建应用的服务场景。
[0053] 作为一种可选的实施方式,如图4所示,上述基于微服务架构的应用开发应用开发系统还可以包括:获取单元305,用于在上述解析单元302解析事件请求,得到待构建应用的服务场景之后,获取该服务场景对应的场景名称,并将该场景名称提供给搜索单元306。
[0054] 搜索单元306,用于在服务场景模板库中搜索场景名称,得到搜索结果,并触发判断单元307启动。
[0055] 判断单元307,用于根据上述搜索结果判断是否存在与上述场景名称相匹配的目标服务场景模板,并将判断结果提供给构建单元304。
[0056] 上述构建单元304,还用于在上述判断单元307判断出服务场景模板库中不存在与场景名称相匹配的目标服务场景模板之后,基于目标服务场景模板构建待构建应用。
[0057] 作为另一种可选的实施方式,如图4所示,上述基于微服务架构的应用开发应用开发系统还可以包括:发送单元308,用于向微服务数据库发送用户权限查询指令,以获取事件请求对应的用户终端在微服务数据库中各个数据分区的权限信息。
[0058] 上述查找单元303,具体用于在上述发送单元308向微服务数据库发送用户权限查询指令,以获取事件请求对应的用户终端在微服务数据库中各个数据分区的权限信息之后,根据用户终端在各个数据分区的权限信息,查找与服务场景相匹配的目标微服务。
[0059] 可见,实施图4所描述的应用开发系统,基于用户的事件请求确定待构建应用的服务场景,并进一步通过匹配服务场景的方式确定用于构建应用的微服务,既能够使得开发的应用符合用户的实际需求,同时也能够基于微服务架构将应用分割为一系列细小的服务,使得每个服务专注于单一业务功能、服务之间边界清晰,灵活性强,极大地缩短了应用开发周期,提升应用开发效率。
[0060] 本发明还提供一种电子设备,该电子设备包括:处理器;
存储器,该存储器上存储有计算机可读指令,该计算机可读指令被处理器执行时,实现如前所示的基于微服务架构的应用开发方法。
[0061] 在一示例性实施例中,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如前所示的基于微服务架构的应用开发方法。
[0062] 应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈