基于微服务的应用系统的生成方法及装置、设备及介质制造方法及图纸

技术编号:37531393 阅读:18 留言:0更新日期:2023-05-12 15:58
本发明专利技术公开了一种基于微服务的应用系统的生成方法及装置、设备及介质,所述应用系统包括主项目和若干和所述主项目对应的子项目;所述生成方法包括:根据所述主项目对应的注册接口,生成全局注册参数;所述子项目将各自的注册参数添加至所述全局注册参数。通过在主从工程中进行针对性的路由控制,把路由管理机制和注册机制抽离出来作为公共的库,封装成一个业务无关性的通用方案,有效地将基于不同的前端开发平台的应用进行功能聚合,从而打破以往各个工程项目的概念,可以根据需求自由组装页面应用,并能让用户实现定制功能。并能让用户实现定制功能。并能让用户实现定制功能。

【技术实现步骤摘要】
基于微服务的应用系统的生成方法及装置、设备及介质


[0001]本专利技术涉及微服务架构
,尤其涉及一种基于微服务的应用系统的生成方法及装置、设备及介质。

技术介绍

[0002]近年来移动应用的趋势是用户期望能够少安装一些应用,将一系列的应用聚合在一起出现,这种趋势也体现在桌面网页应用,前端应用的聚合可以通过微服务化架构实现。前端微服务即不重写原有系统的基础之下,又可以抽出人力来开发新的业务。其实现通常包括路由分发、在不同的框架之上设计通讯加载机制、组合多个独立应用或组件构建单体应用、使用自定义消息传递机制、使用纯网络控件构建应用等方式;不过上述方式都存在各自的局限,例如路由分发式微前端作为采用最多、最易采用的方式,每次用户切换应用时需要刷新页面;在框架之上设计通讯加载机制则必须使用同一个框架。
[0003]随着前端开发技术的发展,框架和版本层出不穷,难免出现前端项目技术栈不统一、所用框架版本不统一。比如,有的项目中采用了angular(前端开发平台),有的项目中采用了vue(前端开发平台),而这些项目若仅仅出于聚合的目的对其进行重构,成本会很高。上述现有的微服务实现方式中也都不能支持基于angular和基于vue共存,因此对于开发造成了很大的局限。

技术实现思路

[0004]本专利技术要解决的技术问题是为了克服现有技术中由于无法基于不同的开发平台实现前端微服务构造而导致前端微服务实现成本较高的缺陷,提供一种支持跨平台开发的微服务架构的生成方法和系统。
[0005]本专利技术是通过下述技术方案来解决上述技术问题:
[0006]本专利技术提供了一种基于微服务的应用系统的生成方法,所述应用系统包括主项目和若干和所述主项目对应的子项目;所述生成方法包括:
[0007]根据所述主项目对应的注册接口,生成全局注册参数;
[0008]所述子项目将各自的注册参数添加至所述全局注册参数。
[0009]较佳地,所述全局注册参数包括路由参数和应用程序接口参数中的至少一种。
[0010]较佳地,所述子项目将各自的注册参数添加至所述全局注册参数的步骤之后还包括:
[0011]发布当前最新的静态资源文件;
[0012]更新所述全局注册参数。
[0013]较佳地,所述生成方法还包括:
[0014]在所述主项目中调入公共组件库,以使所述子项目通过所述主项目调用所述公共组件库。
[0015]本专利技术还提供了一种基于微服务的应用系统的生成系统,所述应用系统包括主项
目和若干和所述主项目对应的子项目;所述生成系统包括:
[0016]参数生成模块,用于根据所述主项目对应的注册接口,生成全局注册参数;
[0017]参数添加模块,用于所述子项目将各自的注册参数添加至所述全局注册参数。
[0018]较佳地,其特征在于,所述全局注册参数包括路由参数和应用程序接口参数中的至少一种。
[0019]较佳地,所述生成系统还包括:
[0020]发布模块,用于发布当前最新的静态资源文件;
[0021]更新模块,用于更新所述全局注册参数。
[0022]较佳地,所述生成系统还包括:
[0023]调用模块,用于在所述主项目中调用公共组件库,以使所述子项目通过所述主项目调用所述公共组件库。
[0024]本专利技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的基于微服务的应用系统的生成方法。
[0025]本专利技术还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于微服务的应用系统的生成方法。
[0026]本专利技术的积极进步效果在于提供了一种基于微服务的应用系统的生成方法及装置、设备及介质,能够通过在主从工程中进行针对性的路由控制,把路由管理机制和注册机制抽离出来作为公共的库,封装成一个业务无关性的通用方案,有效地将基于不同的前端开发平台的应用进行功能聚合,从而打破以往各个工程项目的概念,可以根据需求自由组装页面应用,以及能够让用户实现定制功能。
附图说明
[0027]图1为本专利技术的实施例1的基于微服务的应用系统的生成方法的流程示意图。
[0028]图2为本专利技术的实施例1的基于微服务的应用系统的开发环境示意图。
[0029]图3为本专利技术的实施例1的基于微服务的应用系统的生产环境示意图。
[0030]图4为本专利技术的实施例1的基于微服务的应用系统的应用系统的框架示意图。
[0031]图5为本专利技术的实施例1的基于微服务的应用系统的项目结构图。
[0032]图6为本专利技术的实施例1的基于微服务的应用系统前后端分离示意图。
[0033]图7为本专利技术的实施例1的基于微服务的应用系统的生成方法的较佳实施方式的流程示意图。
[0034]图8为本专利技术的实施例2的基于微服务的应用系统的生成系统的模块示意图。
[0035]图9为本专利技术的实施例3的电子设备的结构示意图。
具体实施方式
[0036]下面通过实施例的方式进一步说明本专利技术,但并不因此将本专利技术限制在所述的实施例范围之中。
[0037]实施例1
[0038]参见图1,本实施例具体提供了一种基于微服务的应用系统的生成方法,应用系统
包括主项目和若干和主项目对应的子项目;生成方法包括:
[0039]S1.根据主项目对应的注册接口,生成全局注册参数。
[0040]S2.子项目将各自的注册参数添加至全局注册参数。
[0041]本实施例中的微服务是一种面向服务的体系架构的变体,通过将单一应用程序划分成一组小的互相协调、互相配合、松散耦合的服务组成一个应用程序来实现最终功能,每个服务运行在独立进程中,服务间采用轻量级的通信机制互相沟通;每个服务围绕具体业务进行构建,并能够独立地部署到生产环境,符合以下特点:独立部署、独立开发、技术无关、不影响用户体验。相比于以往重定向多个应用即路由分发;在不同的框架之上设计通讯及加载机制;通过组合多个独立应用组件构建单体应用;使用框架及自定义消息传递机制;使用网页部件构建应用等方式,本实施例中的基于微服务的应用系统最终在线上运行的是一个单页应用,且能够实现应用独立。
[0042]应用系统包括一个入口项目用于整合各个应用;这个项目就是主项目,也就是Portal工程,其他被整合的业务应用则是子项目,例如Sample工程及User工程。通过webpack(代码编译工具)进行编译,其包括入口、出口和插件,是用于JavaScript(开发语言)应用程序的静态模块打包工具。当webpack处理应用程序时会在内部构建一个依赖图,此依赖图对应映射到项目所需的每个模块。具体地,参见图2,部署独立开发的开发环境,图3示出了独立部署的生产环境。应用系统的框架流程参见图4所示,包括开发期、构建期、部署期和运行期。具体地,通过在开发期主本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于微服务的应用系统的生成方法,其特征在于,所述应用系统包括主项目和若干和所述主项目对应的子项目;所述生成方法包括:根据所述主项目对应的注册接口,生成全局注册参数;所述子项目将各自的注册参数添加至所述全局注册参数。2.如权利要求1所述的基于微服务的应用系统的生成方法,其特征在于,所述全局注册参数包括路由参数和应用程序接口参数中的至少一种。3.如权利要求1所述的基于微服务的应用系统的生成方法,其特征在于,所述子项目将各自的注册参数添加至所述全局注册参数的步骤之后还包括:发布当前最新的静态资源文件;更新所述全局注册参数。4.如权利要求1所述的基于微服务的应用系统的生成方法,其特征在于,所述生成方法还包括:在所述主项目中调入公共组件库,以使所述子项目通过所述主项目调用所述公共组件库。5.一种基于微服务的应用系统的生成系统,其特征在于,所述应用系统包括主项目和若干和所述主项目对应的子项目;所述生成系统包括:参数生成模块,用于根据所述主项目对应的注册接口,生成全局注册参数;参数添加模块,用于所述子项目...

【专利技术属性】
技术研发人员:魏杰
申请(专利权)人:欧电云信息科技江苏有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1