System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 微服务至单体服务包的转化方法、系统、存储介质技术方案_技高网

微服务至单体服务包的转化方法、系统、存储介质技术方案

技术编号:41237908 阅读:2 留言:0更新日期:2024-05-09 23:51
本申请提供一种微服务至单体服务包的转化方法,包括:获取微服务;在单体项目的依赖文件中添加微服务对应的引用项;引用项包括接口引用、数据访问引用、配置引用和公共服务引用;在单体项目中添加各微服务对应的数据源,建立各微服务和对应数据源的引用关系;自定义各微服务的类名,得到单体服务包。本申请无需改变微服务的源码,通过添加微服务的引用项和数据源,将微服务功能合成为一个单体程序进行打包部署,能够解决分布式微服务架构开发的代码直接打包应用至单体架构,能够适配不同应用场景,节省开发人力,降低研发成本。本申请还提供一种微服务至单体服务包的转化系统、存储介质和电子设备,具有上述有益效果。

【技术实现步骤摘要】

本申请涉及计算机,特别涉及一种微服务至单体服务包的转化方法、系统、存储介质和电子设备。


技术介绍

1、微服务架构和单体架构是两种不同的应用程序架构,目前主流的服务器软件开发均采用分布式微服务架构,搭配多种中间件使用,具有高性能、高可用性、高伸缩性、高扩展性等特点,能够应对高并发场景,但相对的也需要大量的服务器资源来部署分布式程序和中间件,所以该架构适合体量、业务量、用户量较大的客户。

2、在工业和物联网领域,存在一些体量较小的客户,他们的用户量并不高,服务器资源也有限,只需要部署一个单体服务和少量必要的中间件即可满足日常使用。针对这种场景,分布式微服务架构便不再适用,需要另外开发一套单体架构的系统。

3、但在业务需求类似的情况下,针对上述场景开发两套系统,一方面耗费人力物力,另一方面需要额外的维护和管理,无形中增加了研发成本。因此,如何将分布式微服务架构开发的代码应用于单体架构系统成为本领域亟待解决的问题。


技术实现思路

1、本申请的目的是提供一种微服务至单体服务包的转化方法、系统、存储介质和电子设备,能够将微服务转化为单体服务进行应用。

2、为解决上述技术问题,本申请提供一种微服务至单体服务包的转化方法,具体技术方案如下:

3、获取微服务;

4、在单体项目的依赖文件中添加所述微服务对应的引用项;所述引用项包括接口引用、数据访问引用、配置引用和公共服务引用;

5、在所述单体项目中添加各所述微服务对应的数据源,建立各所述微服务和对应数据源的引用关系;

6、自定义各所述微服务的类名,得到所述单体服务包。

7、可选的,所述获取微服务包括:

8、将微服务添加至项目管理工具,利用所述项目管理工具中的项目对象模型管理所述微服务;所述项目管理模型用于通过配置文件确定所述微服务对应的结构和属性。

9、可选的,在单体项目的依赖文件中添加所述微服务对应的引用项包括:

10、利用所述项目管理工具添加各所述微服务的引用项。

11、可选的,所述获取微服务包括:

12、利用命令行指令获取微服务,并定位所述微服务对应的jar包地址。

13、可选的,在依赖文件中添加所述微服务对应的引用项之后,还包括:

14、删除所述依赖文件中无用依赖包的引用项。

15、可选的,建立各所述微服务和对应数据源的引用关系,包括:

16、确定所述微服务的名称;

17、建立所述名称与所述数据源之间的引用关系。

18、可选的,得到所述单体服务包之后包括:

19、应用所述单体服务包,调用配置文件检测程序中间件是否存在;

20、若存在,应用所述程序中间件;

21、若不存在,利用单体服务包中的本地参数替代所述程序中间件。

22、本申请还提供一种微服务至单体服务包的转化系统,包括:

23、微服务获取模块,用于获取微服务;

24、引用项配置模块,用于在单体项目的依赖文件中添加所述微服务对应的引用项;所述引用项包括接口引用、数据访问引用、配置引用和公共服务引用;

25、数据源配置模块,用于在所述单体项目中添加各所述微服务对应的数据源,建立各所述微服务和对应数据源的引用关系;

26、生成模块,用于自定义各所述微服务的类名,得到所述单体服务包。

27、本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的转化方法的步骤。

28、本申请还提供一种电子设备,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的转化方法的步骤。

29、本申请提供一种微服务至单体服务包的转化方法,包括:获取微服务;在单体项目的依赖文件中添加所述微服务对应的引用项;所述引用项包括接口引用、数据访问引用、配置引用和公共服务引用;在所述单体项目中添加各所述微服务对应的数据源,建立各所述微服务和对应数据源的引用关系;自定义各所述微服务的类名,得到所述单体服务包。

30、本申请无需改变微服务的源码,通过添加微服务的引用项和数据源,将微服务功能合成为一个单体程序进行打包部署,能够解决分布式微服务架构开发的代码直接打包应用至单体架构,能够适配不同应用场景,无需开发两套系统进行适配,节省开发人力,降低研发成本。

31、本申请还提供一种微服务至单体服务包的转化系统、存储介质和电子设备,具有上述有益效果,此处不再赘述。

本文档来自技高网...

【技术保护点】

1.一种微服务至单体服务包的转化方法,其特征在于,包括:

2.根据权利要求1所述的转化方法,其特征在于,所述获取微服务包括:

3.根据权利要求2所述的转化方法,其特征在于,在单体项目的依赖文件中添加所述微服务对应的引用项包括:

4.根据权利要求1所述的转化方法,其特征在于,所述获取微服务包括:

5.根据权利要求1所述的转化方法,其特征在于,在依赖文件中添加所述微服务对应的引用项之后,还包括:

6.根据权利要求1所述的转化方法,其特征在于,建立各所述微服务和对应数据源的引用关系,包括:

7.根据权利要求1-6任一项所述的转化方法,其特征在于,得到所述单体服务包之后包括:

8.一种微服务至单体服务包的转化系统,其特征在于,包括:

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的转化方法的步骤。

10.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1-7任一项所述的转化方法的步骤。

...

【技术特征摘要】

1.一种微服务至单体服务包的转化方法,其特征在于,包括:

2.根据权利要求1所述的转化方法,其特征在于,所述获取微服务包括:

3.根据权利要求2所述的转化方法,其特征在于,在单体项目的依赖文件中添加所述微服务对应的引用项包括:

4.根据权利要求1所述的转化方法,其特征在于,所述获取微服务包括:

5.根据权利要求1所述的转化方法,其特征在于,在依赖文件中添加所述微服务对应的引用项之后,还包括:

6.根据权利要求1所述的转化方法,其特征在于,建立各所述微服务和对应数...

【专利技术属性】
技术研发人员:方偕廉黄云俤徐培华张志勇倪军
申请(专利权)人:杭州安脉盛智能技术有限公司
类型:发明
国别省市:

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

1