System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种民航安检系统单体与微服务架构的切换方法技术方案_技高网

一种民航安检系统单体与微服务架构的切换方法技术方案

技术编号:40549449 阅读:6 留言:0更新日期:2024-03-05 19:08
本发明专利技术公开了一种民航安检系统单体与微服务架构的切换方法,包括如下步骤:S1、创建民航安检父工程配置文件,分别定义民航安检单体标签配置文件和民航安检微服务标签配置文件,将单体服务和微服务分别作为应用模块加入民航安检父工程中;S2、通过规则引擎分别对所述单体服务和微服务进行流程配置和信息配置,以生成相应的POM配置文件,所述POM配置文件包括单体服务POM配置文件和微服务POM配置文件;S3、使用所述单体服务POM配置文件和微服务POM配置文件分别替换掉所述单体服务和微服务原有的配置文件;S4、使用命令指定激活的单体服务和微服务,以构建单体服务架构和微服务架构;S5、通过更改命令中配置文件选项进行单体服务架构和微服务架构的切换。

【技术实现步骤摘要】

本专利技术涉及安检系统,特别涉及一种民航安检系统单体与微服务架构的切换方法


技术介绍

1、民航安检系统产品由基础模块、管理模块、过检业务模块、登机业务模块等多模块组成,而民航安检后台管理系统则是一个综合性的管理后台。现有的民航安检系统架构采用传统的mvc单体架构模式,将所有的功能和业务逻辑集中在一个单独的应用中,该应用通常由多个模块组成,包括民航安检基础模块、民航安检管理模块和民航安检业务模块等,这些模块之间通过函数调用或接口通信来实现功能的交互。在单体架构模式下,民航安检单体应用被视为一个不可分割的整体构建,每个模块之间存在相互依赖关系,该单体架构的优势在于简单、易于开发和维护,适用于小型和中型项目,但无法实现独立的业务逻辑和数据存储,当安检业务因为压力较大,某个模块遇到性能瓶颈时需要拓展时,单独对该模块进行扩容升级是无法实现的,只能部署多套民航安检单体系统应用,从而造成资源的浪费。

2、民航安检单体架构不可分割的特性还进一步带来了以下缺点:

3、(1)可扩展性不足:由于所有功能都集成在一个应用程序中,系统的可扩展性受到限制。当需要添加新的功能时,必须修改整个应用程序,这导致扩展变得困难。例如:为了发布一些非主要业务功能,需要停止整个安检服务,导致系统的可用性较低。

4、(2)代码耦合度高:在单体架构中,各个功能紧密集成,代码之间的依赖关系较强,这导致代码耦合度高。当需要修改某个功能时,可能会影响到其他功能,使得系统代码变得复杂、难以理解和维护,增加了开发人员之间的协作难度。

5、(3)性能问题:由于单一应用程序需要处理大量的请求和数据,缺乏有效的分层和分离机制,可能会导致性能瓶颈和延迟问题。当用户并发访问量增加时,系统可能无法有效处理请求,从而影响用户体验。

6、(4)故障隔离困难:当单体应用程序发生故障时,整个系统可能会受到影响。由于功能之间的紧密耦合,故障可能会波及到其他模块,导致系统的可用性降低,隔离和定位故障变得更加困难,增加了故障排除和修复的复杂性。

7、(5)难以应对技术栈演进:随着技术的不断进步和变化,单体架构可能难以跟上技术栈的演进。如果需要引入新的技术或框架,可能需要对整个应用程序进行重构,这是一项耗时和风险较高的任务。

8、因此,为了满足民航安检系统的需求增长和规模扩大的挑战,需要一种更加灵活、稳定和可扩展的方法以改善上述情况。


技术实现思路

1、为解决上述问题,本专利技术提供了一种民航安检系统单体与微服务架构的切换方法。

2、本专利技术采用以下技术方案:

3、一种民航安检系统单体与微服务架构的切换方法,包括如下步骤:

4、s1、创建民航安检父工程配置文件,分别定义民航安检单体标签配置文件和民航安检微服务标签配置文件,将单体服务和微服务分别作为应用模块加入民航安检父工程中;

5、s2、通过规则引擎分别对所述单体服务和微服务进行流程配置和信息配置,以生成相应的pom配置文件,所述pom配置文件包括单体服务pom配置文件和微服务pom配置文件;

6、s3、使用所述单体服务pom配置文件和微服务pom配置文件分别替换掉所述单体服务和微服务原有的配置文件;

7、s4、使用命令指定激活的单体服务和微服务,以构建单体服务架构和微服务架构;

8、s5、通过更改所述命令中配置文件选项进行单体服务架构和微服务架构的切换。

9、优选地,所述父工程配置文件是通过规则引擎创建和生成的。

10、优选地,所述单体服务应用架构中设置有单体应用模块,所述单体应用模块包括若干功能子模块,且各个功能子模块的功能和业务逻辑集中于所述单体应用模块中。

11、优选地,各个所述功能子模块之间通过函数调用或接口通信进行功能交互。

12、优选地,所述微服务应用架构中包含若干微服务应用模块,且每个微服务应用模块具有独立业务逻辑。

13、优选地,各个所述微服务应用模块之间通过网络通信进行功能交互。

14、优选地,所述单体服务架构采用统一的配置文件对整个单体应用模块进行管理,所述微服务应用架构中每个所述微服务应用模块采用独立的配置文件进行管理。

15、采用上述技术方案后,本专利技术与
技术介绍
相比,具有如下优点:

16、本专利技术提供一种民航安检系统单体与微服务架构的切换方法,快速将民航安检系统在单体服务架构和微服务架构进行切换,够实现资源的合理分配和更好的可扩展性,相比传统只有单体服务架构的方式,微服务架构将应民航安检系统的功能拆分为较小的独立模块集合,这些模块可以独立部署和扩展,以满足不同的需求,使得系统更加灵活、稳定和可扩展;通过采用微服务架构,民航安检系统能够更好地满足需求的变化和规模的扩展,每个微服务都可以独立开发、测试和部署,减少了代码的耦合性。这样一来,修改一个微服务的代码不会对其他微服务造成影响,提高了系统的可维护性和交付效率。

17、本专利技术提供一种民航安检系统单体与微服务架构的切换方法,将民航安检应用层代码结构转换成适用于民航安检微服务应用层的代码结构。这样一来,无需对程序代码进行大量修改或只需进行少量修改,就能够实现民航安检系统的功能分解为可独立部署的模块,从而提供了更大的灵活性。通过快速实现服务的扩容和缩放,可以有的放矢地增加部署的微服务数量,以应对更多的并发需求。而在高峰期之后,可以释放微服务容器,回收资源,以避免资源的浪费。

本文档来自技高网...

【技术保护点】

1.一种民航安检系统单体与微服务架构的切换方法,其特征在于:包括如下步骤:

2.如权利要求1所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:所述父工程配置文件是通过规则引擎创建和生成的。

3.如权利要求1所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:所述单体服务应用架构中设置有单体应用模块,所述单体应用模块包括若干功能子模块,且各个功能子模块的功能和业务逻辑集中于所述单体应用模块中。

4.如权利要求3所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:各个所述功能子模块之间通过函数调用或接口通信进行功能交互。

5.如权利要求3所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:所述微服务应用架构中包含若干微服务应用模块,且每个微服务应用模块具有独立业务逻辑。

6.如权利要求5所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:各个所述微服务应用模块之间通过网络通信进行功能交互。

7.权利要求5所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:所述单体服务架构采用统一的配置文件对整个单体应用模块进行管理,所述微服务应用架构中每个所述微服务应用模块采用独立的配置文件进行管理。

...

【技术特征摘要】

1.一种民航安检系统单体与微服务架构的切换方法,其特征在于:包括如下步骤:

2.如权利要求1所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:所述父工程配置文件是通过规则引擎创建和生成的。

3.如权利要求1所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:所述单体服务应用架构中设置有单体应用模块,所述单体应用模块包括若干功能子模块,且各个功能子模块的功能和业务逻辑集中于所述单体应用模块中。

4.如权利要求3所述的一种民航安检系统单体与微服务架构的切换方法,其特征在于:各个所述功能子模块之间通过函数调用...

【专利技术属性】
技术研发人员:谢培玮王春凯苏忠东林建昌谢志鹏陈丽群
申请(专利权)人:厦门民航凯亚有限公司
类型:发明
国别省市:

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

1