Spring Cloud和微服务入门2:【Spring Cloud开发课程查询项目】一:内容概述;

Spring Cloud和微服务入门2:【Spring Cloud开发课程查询项目】一:内容概述;,第1张

说明:

(1)在本专栏中,我们会通过开发【Spring Cloud开发课程查询项目】来介绍Spring Cloud;其中,具体的项目业务内容不是重点,重点是Spring Cloud的开发和各组件的使用套路;

一:【Spring Cloud开发课程查询功能】内容概述;

1.Spring Cloud简介;

2.项目整体技术设计;

          ● 技术设计往往会涉及到数据流向、表设计等内容;

3.具体模块开发之:【课程列表模块】开发;

          ● Spring Cloud的微服务项目中,我们会使用不同的模块来实现不同的功能,而且模块与模块之间是很独立的;

          ● 【Spring Cloud开发课程查询项目】就有【课程列表模块】和【课程价格模块】;然后,我们会先开发【课程列表模块】;

4.具体模块开发之:【课程价格模块】开发;

          ● 开发【课程价格模块】的时候,就需要调用【课程列表模块】中的接口;于是,这就涉及到了模块与模块间的调用了;为此,我们需要进行配置,需要服务注册与发现;

5.服务注册与发现:采用Eureka组件;

          ● Eureka组件,可以让服务之间很容易发现对方;

6.利用Feign组件,来进行服务之间的调用;

          ● 要想实现服务之间的调用,有很多解决方案;;;这儿我们使用的是Feign组件,Feign组件可以让代码简介明了,而且还可以应对地址变化的情况;

7.负载均衡Ribbon;

          ● 如果服务很多的话(更多的是指,如【商品服务】我们部署了多个实例的情况),就涉及到负载均衡;

8.熔断器Hystrix;

          ● 我们不能保证网络是一直OK的,网络一般也不太稳定,而且网络OK与否也是不可控的(比如,电缆断了;)

          ● 那么,一旦因为网络问题,导致某个服务不可用了;此时,为了保证用户的良好体验,我们需要提供一个兜底的策略,以保证整个系统在全流程上还是OK的;

9.网关Zuul;

          ● 微服务中有很多服务,这些服务对外需要有一个统一的出入口;这个就是网关;模块与模块之间,也可以使用网关来通信;(而且,网关也算是一层安全保护;网关也可以做解码等功能)

          ● 如果没有网关,虽然在一定程度上,也能够对外提供服务,但会显得十分杂乱无章;

我们也会在项目中,使用上面介绍的这些组件;以项目为例,学习Spring Cloud;

10.项目整体测试;

          ● 最后,我们会对项目进行整体的测试(包括,两个服务各自内容的测试,两个服务调用的测试,熔断的测试等)

11.项目总结;

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/924224.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存