微服务论文New

要点: 微服务架构

论文需要体现:

1 微服务的特点:面向服务的架构的一种,每功能放入一个独立服务(进程)中

独立部署(简单部署),

独立运行(每个服务独立在其独立进程中),

支持异构(每个服务使用不同的数据库)

更好的可用性和弹性

独立测试

松耦合

轻量级通信机制RESTful API

小服务(专注做一件事情)

化整为零,易于小团队开发

困难: 分布式环境下的数据一致性、测试的复杂性(服务间依赖测试)、运维的复杂性

2阐述微服务与单体架构、分层应用架构、SOA面向服务的架构的区别,已经典型应用场景;

3基于微服务方式使用的项目在敏捷和devops中的应用

摘要

2022年6月份我参加了XX学校融合门户开发,担任系统分析师和部分架构设计工作,该系统主要包含统一身份认证门户、一站式办事门户、信息门户和智慧校园融合门户主要功能,本文结合作者的实践,以XX学校融合门户系统为例,讨论基于微服务架构方法及其应用到融合门户项目,(过程,方法,措施)我们采用原型法为基础的需求分析,形成完备的迭代化需求规格说明书,采用基于spring cloud微服务开发框架进行项目开发,结合容器引擎docker和kubernets进行服务编排和部署,采用jenkins实现持续集成CI和持续交付和部署CD,同时采用zabbix监控服务实例,完成日志集成和服务监控,实现开发运维一体化,使得构建、测试、发布软件能够更加地快捷、频繁和可靠,把敏捷开发部门和运维部门之间的围墙打通,形成闭环。

(正文部分)

随着智慧校园建设的发展,各个学校对于门户建设提出了更高的要求,融合门户包括了信息集成、应用集成和知识集成,以此提升学校的信息化应用水平,2022年4月学校通过公开招投标确定我们公司承担这项工作,项目金额为120万,公司具备教育行业融合门户平台建设经验,我承担本项目的系统分析与设计工作,本项目包括统一身份认证门户、一站式办事门户、信息门户和智慧校园融合门户等功能。融合门户建设目标是设计高效流畅的服务流程,以一站式服务模式为载体,以互联网为主要工具,实现一网通办满足师生服务的要求。(项目背景介绍)

融合门户建设包括消息中心,数据中心,任务中心,资讯中心,公共资源,日程中心等,平台主要包括应用层、网关层、服务层和资源层四层。采用了微服务的架构,主要特点是:独立部署、独立运行、独立测试、支持异构、轻量级通信机制、门户具有更好的可用性和扩展性。(过度内容)

以下主要介绍微服务架构下的融合门户分层实现,统一身份认证服务构建,容器引擎微服务架构支撑融合门户服务部署和采用devops思想敏捷化构建融合门户。

1融合门户微服务架构分层实现,每个微服务主要包括应用层、网关层、服务层和资源层四层。应用层提供平台运营管理和业务应用,提供服务接口,运营管理为Nodejs,Vue,Echarts等前端框架调用数据,同时为第三方应用系统提供API接口,数据通信机制采用Json和restful。

网关层为前端应用层提供统一的接入入口,通过网关层将请求分流到服务层,为下层的应用服务提供负载均衡、动态路由、请求过滤和转发的功能。服务层包括门户业务服务、门户功能服务和门户资源服务,为用户需求模块服务功能,主要包括消息服务,数据服务,任务服务,资讯服务,公共资源服务,日程服务。资源层包括部署平台所需的硬件服务器资源和应用服务资源池,硬件服务器资源包括应用服务器、中间件服务器、数据库服务器和缓存服务器等硬件资源,应用服务资源池是融合门户硬件的集群包括消息资源、数据资源、任务资源、资讯资源、公共资源和日程资源等。通过对门户资源的统一分配、管理和调度,对外提供统一的按需分配、弹性扩展的门户资源功能服务。

2 统一身份认证服务构建,融合门户集成了学校主要应用系统的认证登录,采用CAS(实现SSO单点登录框架),LDAP(linux轻量级目录)目录认证和oauth2授权认证。主要应用场景包括学校业务系统大部分采用CAS认证,学生无线网络身份认证采用LDAP认证,企业微信认证采用oauth2 授权码模式认证。认证服务通过应用层提供服务接口、网关层完成负载均衡、服务层完成用户逻辑判断、资源层实现用户身份资源数据集管理;统一身份认证服务构建完成门户认证的集成工作。

3 容器引擎微服务架构支撑融合门户服务部署,docker是一种容器技术,kubernetes可以管理多个docker容器,是集群化的容器排程和管理平台,融合门户中的各个应用以微服务的形式部署在容器上,其中包括无状态服务keepalive服务,nginx服务,tomcat服务,redis服务,工作流bps服务,在线预览服务等,也包括消息服务,数据服务,任务服务,资讯服务,公共资源服务,日程服务等有状态服务,微服务具备独立简单部署能力,这样融合门户具有更好的可用性和弹性。Docker帮助开发人员将应用程序和其依赖项打包成容器,从而提高应用程序的可移植性和可重复性。开发人员开发过程中采用持续集成/持续交付工具jenkins进行自动化构建、测试和软件部署。

4 采用devops思想敏捷化快速构建融合门户,通过CI/CD持续集成和持续交付、自动化测试、跨部门合作、持续监控和反馈等实践,完成门户内各个服务的开发与部署。从而提升软件质量,加速上线速度,实现门户平台更好的扩展性和灵活性。开发人员根据用户需求变更及时反应,修改代码,敏捷化部署。

(结尾)

在微服务架构技术的成功实践下,该融合门户项目在2023年4月通过验收,正式运行1年来系统稳定,同时该架构降低用户对业务的动态调整的难度和成本,为公司成为2期项目开发打下坚实的基础。回望本次项目的成功经历,我深刻体会到微服务架构技术在系统开发中起到了至关重要的作用。企业在完成多个融合门户建设项目以后,可以进一步延申到领域工程中,实现软件复用,服务复用,构件复用和对象复用。为以后的领域分析、领域设计和领域实现打下坚实的基础。当然在项目的分析和设计过程中也存在一些问题和不足,例如运维成本增加、分布式架构下数据的一致性问题,需要专门的运维团队部署和管理,增加了系统的复杂性和运维成本。在以后的项目中,我们会继续结合实际场景和软件架构风格,力争建设高质量的软件项目。

参考

https://blog.csdn.net/qq_40535327/article/details/104985815

https://zhuanlan.zhihu.com/p/333384719

https://blog.csdn.net/guorui_java/article/details/129213073

基于智能微服务架构的智慧校园融合门户模型建设_刘姣

oauth2授权认证(授权码模式、密码模式、客户端凭证模式以及简化模式)。

posted @ 2024-06-18 17:08  jhtchina  阅读(49)  评论(0)    收藏  举报