当前位置:主页 > 科技论文 > 软件论文 >

基于运维监控业务的微服务架构设计模式研究与应用

发布时间:2021-12-16 07:28
  微服务是一种现代化的软件架构风格,它将复杂的软件分解成更小、更独立的分布式体系,具有高可用和易伸缩等优点。不过,微服务架构从理论到构建的相关研究还不够深入,尚缺乏可以复用的标准范式(如设计模式)和体系结构(如架构模式)以帮助开发人员基于既有经验进行快速有效的软件开发。本文基于微服务架构的核心理念,从软件设计模式可以解决面向对象设计中共性问题的思路出发,研究可以实现兼具稳定性和拓展性系统的微服务化理论和方法,主要研究内容和成果如下:(1)研究建立一组微服务架构设计模式及其模式语言。具体包括服务拆分模式、微服务通信模式、安全服务化模式、微服务开发模式、微服务基座模式、微服务部署模式6种模式,分别对应了微服务架构设计中的服务拆分、服务通信、架构安全性、开发过程、开发方式、部署过程等环节可能存在问题的解决方案。改进了当前被研究的微服务架构设计方法论中元素职责边界不清晰,忽略面向对象范式的代码模型等缺陷,为微服务架构从理论到构建提供更高层次的指导。(2)研究微服务架构设计模式的应用可行性。首先,为将系统技术复杂度与业务复杂度解耦,本文提出使用微服务基座来封装一套微服务技术基础设施。然后通过引入领... 

【文章来源】:杭州师范大学浙江省

【文章页数】:108 页

【学位级别】:硕士

【部分图文】:

基于运维监控业务的微服务架构设计模式研究与应用


软件设计模式示例-工厂模式

架构图,架构,经典,软件架构


杭州师范大学硕士学位论文软件架构理论及相关技术8在大规模的软件开发中,设计模式可以帮助我们实现系统结构化,很好地支撑起系统的稳定性和可扩展性。设计模式也是实现软件架构的手段之一,在系统中使用合适的设计模式,可以用最少量的修改来应对需求变更。2.2软件架构演进2.2.1单体软件架构单体软件架构是指软件项目被作为单一的单元进行代码编写、编译、测试和打包。项目的交付形态是一个执行文件或者资源包,并在一台机器上部署。在单体应用中,开发和测试都很简单,易于对应用软件进行大规模的更改,在一些吞吐量较大的业务场景中,可以同时运行多个实例,由一个负载均衡器进行调度,实现应用的水平拓展。得益于大量设计模式的指导,面向对象语言的封装、继承、多态等特性的加持,单体应用可以让软件达到类的复用。在Java语言的开发中,单体软件架构一般表现为一个JavaWeb应用,随着组件化、模块化思想的普及,单体软件开始应用分层架构模式。分层架构是运用最为广泛的架构模式,几乎每个软件系统都需要通过层(Layer)来隔离不同的关注点(ConcernPoint),以此应对不同需求的变化,使得这种变化可以独立进行[19]。一个经典的分层架构如图2-2所示,按照调用顺序,分层架构从上至下依次为用户界面层(表示层)、业务逻辑层、数据访问层,用户界面层负责用户交互,业务逻辑层负责业务逻辑,数据访问层负责数据库的数据存取,应用部署在一个容器中提供服务。图2-2经典分层架构但是,随着应用项目变得复杂、开发团队不断扩张之后,单体应用的不足和弊端也显现出来。首先,单体软件架构作为一个整体,任何模块出现问题,比如

架构图,架构,软件架构


杭州师范大学硕士学位论文软件架构理论及相关技术9内存泄露都会影响整个软件进程。其次,软件代码库庞大,应用难以理解和迭代,持续部署困难等。除此之外,单体应用架构在面临大流量、高并发场景时只能进行横向扩展,无法单独扩展单个组件。可见,单体软件架构已经不能满足复杂软件的需求,想要适应需求必须要对业务进行分解。面向服务的软件架构正是为此应运而生,并用于构建分布式应用。2.2.2面向服务的软件架构面向服务的软件架构(Service-OrientedArchitecture,SOA)出现在20世纪90年代[20]。它是一种分布式的软件架构体系,核心主体是服务,提倡将应用软件的不同功能单元进行拆分形成多个服务,其目标是通过服务的流程化来实现业务的灵活性。服务相互之间通过定义良好的接口和契约联动,这使得构建在各种各样的系统中的服务可以使用统一和通用的方式进行通信。SOA架构强调服务的集成,它通过企业服务总线ESB来管理所有业务的执行流程。基于各基础服务,可以将业务过程用类似BPEL(业务流程执行语言)流程的方式编排起来[21],如图2-3所示。图2-3SOA架构业务调用示意SOA架构将应用程序根据不同的功能进行了拆分,目的是要将紧耦合的系统,划分为面向业务的、粗粒度、松耦合、无状态的服务,这些服务可以在不同的服务节点上部署。与单体软件相比,扩展灵活性有了极大的提高,能够针对性的提高某些服务的性能。不过,SOA软件架构过度依赖于企业集成总线,单点故障对系统的影响较大,而且服务之间的拆分粒度过大,在复杂业务中,并不能做到服

【参考文献】:
期刊论文
[1]数据中心使用面积与设备数量的对应关系[J]. 孙殿伟.  信息记录材料. 2019(06)
[2]模式驱动的软件架构设计研究综述[J]. 张英杰,朱雪峰.  计算机科学. 2018(S2)
[3]基于三层架构的软件体系设计与应用[J]. 周健.  电子技术与软件工程. 2017(08)
[4]基于OAuth2.0协议的安全授权模型研究[J]. 王婷婷,赵松泽.  软件工程. 2017(01)
[5]服务器监控技术综述及展望[J]. 王慧强,戴秀豪,吕宏武,林俊宇.  计算机科学. 2016(08)
[6]设计模式及其在软件设计中的应用[J]. 韩菁华.  信息系统工程. 2016(05)

硕士论文
[1]基于微服务的软件体系结构设计方法研究与应用[D]. 蔡亚楠.北京邮电大学 2019
[2]基于MVVM的软件架构模式MVVD的设计与实现[D]. 刘春晓.天津大学 2018
[3]基于SOA架构的分布式服务化治理方案的研究[D]. 郭正敏.南京邮电大学 2016
[4]面向SOA架构微服务的安全系统的设计与实现[D]. 唐文宇.南京大学 2016
[5]大规模数据中心监控系统的设计与实现[D]. 郑伟.中国科学院大学(工程管理与信息技术学院) 2013



本文编号:3537740

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3537740.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户427c4***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com