[发明专利]一种基于.NET Core的支持不同部署方式的微服务实现方法在审
申请号: | 202011631150.4 | 申请日: | 2020-12-30 |
公开(公告)号: | CN112685052A | 公开(公告)日: | 2021-04-20 |
发明(设计)人: | 王延东 | 申请(专利权)人: | 浪潮通用软件有限公司 |
主分类号: | G06F8/60 | 分类号: | G06F8/60;G06F9/445;G06F9/54 |
代理公司: | 北京君慧知识产权代理事务所(普通合伙) 11716 | 代理人: | 董延丽 |
地址: | 250101 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 net core 支持 不同 部署 方式 微服 务实 方法 | ||
1.一种基于.NET Core的支持不同部署方式的微服务实现方法,其特征在于,包括:
根据拆分的微服务定义对应的微服务单元,生成所述微服务单元描述文件;
根据所述微服务单元不同的功能,划分所述微服务单元对应的微服务单元类型;
启动应用程序,首先识别当前系统中所有的所述微服务单元描述文件,形成微服务单元列表;
根据系统识别的所述微服务单元列表,依据所述微服务单元类型按照顺序加载程序集;
当进程中需要对微服务单元调用时,通过远程过程调用RPC框架进行所述微服务单元之间的调用。
2.根据权利要求1所述的方法,其特征在于,根据拆分的微服务定义对应的微服务单元,具体包括:
首先通过对特定业务领域的分析与建模,将复杂的应用程序分解成一组支持独立部署的微服务,然后根据业务微服务划分进行对应的微服务单元定义,并将其作为所述应用程序合并和/或拆分部署的最小识别对象;
所述微服务单元表示微服务程序打包、部署的单位,是用户能够感知的最小功能集,代表微服务拆分的最小单元。
3.根据权利要求1所述的方法,其特征在于,所述微服务单元类型具体包括:
公共微服务单元;
所述公共微服务单元不包含外部服务接口和实现,只是作为存放公共的程序集和配置文件存在,提供程序运行所依赖的公共程序接口,不能独立部署。
4.根据权利要求3所述的方法,其特征在于,所述微服务单元类型具体包括:
业务微服务单元;
所述业务微服务单元包括外部服务和页面,以及实现所依赖的本模块相关的程序集以及配置文件等信息,是一个完整的部署目录,文件夹的命名没有特殊要求,一般和服务单元名称相同。
5.根据权利要求1所述的方法,其特征在于,划分所述微服务单元对应的微服务单元类型,具体包括:
在实际拆分所述微服务时,核心域必定包含在所述业务微服务单元中,而通用域和支撑域因为在不同关键应用、甚至同一关键应用的不同所述微服务单元之间是通用的,所以,为了避免在多个所述微服务单元中重复部署,将其拆分到所述公共微服务单元中。
6.根据权利要求1所述的方法,其特征在于,启动应用程序,首先识别当前系统中所有的所述微服务单元描述文件,形成微服务单元列表,具体包括:
应用程序启动时首先循环查找系统中所有的子目录,识别当前系统中所有的所述微服务单元描述文件,形成所述微服务单元列表及每个所述微服务单元对应路径及程序集信息。
7.根据权利要求1所述的方法,其特征在于,根据系统识别的所述微服务单元列表,依据所述微服务单元类型按照不同顺序加载程序集,具体包括:
通过程序集成扩展服务循环按顺序加载每个所述微服务单元路径下的程序集文件。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
通过扩展的应用模型ApplicationModel收集所有Web应用程序编程接口WebAPI服务管理者Controller信息,并添加自定义过滤器Filter、路由,完成应用服务器的启动环节。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过远程过程调用RPC框架实现所述微服务单元间的隔离,使用DotNetty或Flurl.Http实现远程过程调用RPC调用。
10.根据权利要求1所述的方法,其特征在于,所述微服务单元具体包括:
可执行程序集、页面、文档,所述文档为最终用户支持材料和发布说明。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮通用软件有限公司,未经浪潮通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011631150.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种新型矿山切石机
- 下一篇:一种金属线镀层厚度的测试方法