将 PetClinic 重构为微服务架构(下)|学习笔记

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 快速学习将 PetClinic 重构为微服务架构(下)

开发者学堂课程【阿里云 K8S 微服务部署案例将 PetClinic 重构为微服务架构(下)学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/668/detail/11569


将 PetClinic 重构为微服务架构(下)

将 PetClinic 微服务项目源码 Review

在 web-app 下找到 pom.xml 来说明,首先利用继承的关系,其次有依

赖关系来做测试聚口服务来暴露 API,另外 web-app 是来调用后端服

务来做一些聚合的动作,如果后台出现大量错误时使用 hystrix 来进

行垄断。

指的是第三方库用来暴露,lombok 是用来简化代码编写的

image.png

因为是 web-app 应用,所以使用的是静态,因此引入 webjars,这些

是静态使用的资源以 webjars 引进来使用

image.png


使用 dockerfile 来打造静态的景象

image.png

因为 web-app 承担着聚合服务,他回去调用后台服务来做聚合的动

作,能聚合出 OwenerDetails 意思是宠物主人相关的加上访问记录的

数据,调用后返回给调用方,其中 command 在后台出现大量错误时(调

用失败)会出现垄断,则要返回一个空的数据。

image.png

在 static 静态资源下不仅仅是 API 还是一个应用资源,像 css,

fonts,image 都是静态资源,当用户在浏览器中访问应用时,会加载

主页面。

image.png

代表的是主键,还有导航下的页面展示。我们重点在 KS8 不是前端所

以不在这里多说。

image.png

web-app 要调用后台进行聚合,所以我们需要调用两个服务,这是两

个端点带有默认值也可以通过环境标量来进行调试。

image.png

最后我们来看这个程序,基础静像 jdk 传进来 jar 名字会加入到静像

中。

image.png

微服务的网关入口,首先利用继承的关系,其次引用 SpringBoot 来

暴露,引入 SpringCloud 来使用,web-app 是来调用后端服务来做

一些聚合的动作,最后使用 dockerfile 来打造静态的景象

image.png

是主入口程序,是不需要代码的但是需要配置

前缀是静态发出来的。如果进来的都是静态资源那么将会转发到

web-app 下的。

image.png

构建出应用,基础静像 jdk 传进来 jar 名字会加入到静像中,

image.png

如果想要在本地静像构建则要使用 mvncleaninstall,在静像构建

+上传 dockerhubmvncleandeploy,不仅会编译和测试而且可以上

传,但注意配置要有所调整。一个是调整前缀,设置账号和密码

image.png

下面我们来实际操作静态的配置,首先运行命令构建所有的静像,一

共有6个步骤需要依次进行自动执行,展示的是所有静像构建完毕。

image.png

使用 douker 来查看本地所有静像,构建5个完成。

image.png

小结:

本课程学习了微服版的架构,也讲解了这部分的代码。

需要注意两点,一个是微服架构需要引入网关或者是反向代理,这样

才可以实现反向路由管理和转发。

我们 web-app 一方面实现了聚合 API,另一方面也实现了单一 SPA 的

单页展示。

相关文章
|
Cloud Native Dubbo 算法
微服务架构技术选型思考
在互联网+ 和新商业业态的冲击下,传统行业正处于技术架构转型的十字路口,随着业务的不断创新变化,服务架构也随之无时无刻地进行革新。从早期的单体应用架构、面向SOA架构以及现在的微服务架构,无不是随着业务场景的不同诉求而进行适应性架构变迁。基于当前行业的业务发展,天然基于云服务的云原生模式无疑能给出重要参考意义。然而如何落地云原生技术正逐步成为行业用户的焦点。作为云原生生态领域中的关键一员,微服务的一举一动牵动着整个生态的发展方向。
267 0
|
1天前
|
监控 持续交付 API
深入理解微服务架构:从设计原则到实践应用
深入理解微服务架构:从设计原则到实践应用
|
30天前
|
监控 API 开发者
后端开发中的微服务架构实践与优化
【10月更文挑战第17天】 本文深入探讨了微服务架构在后端开发中的应用及其优化策略。通过分析微服务的核心理念、设计原则及实际案例,揭示了如何构建高效、可扩展的微服务系统。文章强调了微服务架构对于提升系统灵活性、降低耦合度的重要性,并提供了实用的优化建议,帮助开发者更好地应对复杂业务场景下的挑战。
22 7
|
3月前
|
消息中间件 测试技术 API
深入解析微服务架构的设计与实践
在软件工程领域,"分而治之"的策略一直是解决复杂问题的有效方法。微服务架构作为这一策略的现代体现,它通过将大型应用程序分解为一组小的、独立的服务来简化开发与部署。本文将带你了解微服务的核心概念,探讨设计时的关键考虑因素,并分享实践中的一些经验教训,旨在帮助开发者更好地构建和维护可扩展的系统。
|
6月前
|
算法 API 数据库
重构单体为微服务
重构单体为微服务
101 0
|
6月前
|
监控 前端开发 持续交付
微服务的4个设计原则和19个解决方案
微服务的4个设计原则和19个解决方案
283 0
|
存储 运维 Java
微服务架构基础篇
微服务架构基础篇
134 0
|
微服务
如何正确的设计微服务(2)
如何正确的设计微服务
如何正确的设计微服务(2)
|
运维 前端开发 JavaScript
从单体结构到微服务架构的转变,微服务入门
从单体结构到微服务架构的转变,微服务入门
238 0
从单体结构到微服务架构的转变,微服务入门
|
设计模式 存储 消息中间件
【微服务架构】一文读懂单片到微服务架构的模式和最佳实践
【微服务架构】一文读懂单片到微服务架构的模式和最佳实践
下一篇
无影云桌面