[发明专利]一种基于特定场景模块化的脚手架设计方法及系统在审
申请号: | 202310875495.1 | 申请日: | 2023-07-18 |
公开(公告)号: | CN116594681A | 公开(公告)日: | 2023-08-15 |
发明(设计)人: | 李声松;张金银;张溪梦;王乐珩 | 申请(专利权)人: | 杭州比智科技有限公司 |
主分类号: | G06F8/72 | 分类号: | G06F8/72;G06F8/30 |
代理公司: | 北京云科知识产权代理事务所(特殊普通合伙) 11483 | 代理人: | 王素贞 |
地址: | 311121 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 特定 场景 模块化 脚手架 设计 方法 系统 | ||
本发明公开了一种基于特定场景模块化的脚手架设计方法及系统,包括:S1.指定微服务项目使用相同版本的父项目,要求所有的项目的包路径都包含各个项目自己命名空间;要求所有项目采用统一的配置文件;S2.使用JavaParser来精简代码;S3.合并多个精简项目的代码为单一项目应用。本发明的方法及系统能够精简代码,按模块去除对用户无用的代码;通过合成单体应用使之共享内存节约服务器资源,并可用于二次开发。
技术领域
本发明涉及计算机网络和软件开发技术领域,尤其是涉及一种基于特定场景模块化的脚手架设计方法及系统。
背景技术
当一款java微服务软件进行商业售卖时,一般会按照普通版、企业版、至尊版等进行分级,每个版本内又包含有可选服务,并对应不同的价格。最终会按照客户需要的功能清单进行部署。
目前市面上主流部署方案都是进行全量部署或按照服务粒度进行部署,部署方式一是物理机部署,二是容器化部署,在客户机器资源比较紧张及使用量不大的时候往往会在一台机器上部署多个服务。但是应用与应用之间互相不共用内存及有一些客户不需要的功能也部署在机器上,导致系统资源浪费,基于以上研究,本发明提供了一套可以缩减无用代码及合并成单体应用的脚手架以便于共享内存节约计算机资源的方法。
现在主流的微服务架构配合k8s容器化技术,部署复杂架构的应用有扩展性、伸缩性、稳定性及易于管理部署等优势特性。但在客户机器资源紧张的时候,并且只需要部分产品功能的时候,其耗费资源的特点就会被暴露出来,
因此需要通过技术手段删除掉不需要的功能的相关代码,然后将多个微服务应用合并成单个应用部署,其因为可以共享内存空间,也可节省资源。现代应用程序规模和复杂性不断增大,开发人员需要处理大量代码,并确保应用程序的可维护性和可扩展性。对于web应用主流采用微服务架构,但将软件系统作为产品售卖的时候,需要根据客户的实际情况调整项目,
若都采用人工处理来调整项目及代码,该工作将是海量的工作。
发明内容
针对现有技术存在的问题,本发明的目的在于提供一种基于特定场景模块化的脚手架设计方法及系统,将多应用的微服务项目合并成单体应用。精简代码,按模块去除对用户无用的代码。通过合成单体应用使之共享内存节约服务器资源,并可用于二次开发。
为实现上述目的,本发明提供一种基于特定场景模块化的脚手架设计方法,所述方法包括以下步骤:
S1.指定微服务项目使用相同版本的父项目,要求所有的项目的包路径都包含各个项目自己命名空间;要求所有项目采用统一的配置文件;
S2.使用JavaParser来精简代码;创建一个JavaParser,识别出配置文件中提到的类和方法及遍历依赖找到所有项目中需要的类和方法,使用JavaParser删除代码节点,得到一个新的精简项目;
S3.合并多个项目的代码为单一项目应用。
进一步,步骤S2中使用JavaParser的基本过程如下:
S2.1.使用JavaParser javaParser=new JavaParser()创建一个JavaParser对象;
S2.2.读取一份配置文件,通过扫描清单内提供的入口模块包可以得到所有的入口controller类,递归下去找到所有需要的所有的类及类的方法,创建两个List,第一个List里面存储了下一批待扫描类和方法命名为待扫描集合,第二个存储已经处理过的类和方法命名为已处理集合;将从清单读取到的类和方法存储到待扫描集合及已处理集合。
S2.3在步骤2得到了初始入口类待扫描集合,通过包名扫描对应的目标项目文件夹内的java文件匹配到目标入口类的文件,通过javaparser解析入口类的的AST树,遍历该AST树找到入口方法,找到入口方法依赖当前操作的项目类及依赖方法,若遍历到非本项目的类,即三方jar的类则跳过,
进一步,所述配置文件是excel。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州比智科技有限公司,未经杭州比智科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310875495.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种超薄型防变形防爆组合盖帽
- 下一篇:一种智能镍氢电池防止失控发热装置