看看我是怎么学习SpringCloud的 https://pan.baidu.com/s/16GwFh17fihySHvEVt02OkQ
提取码:86ir
一、 网站的架构演变
网络架构由最开始的三层mvc渐渐演变。传统的三层架构后来在互联网公司让几百人几千人同时开发一个项目已经变得不可行,并且会产生代码冲突的问题。基于SOA面向服务开发的架构,渐渐产生了微服务架构。微服务的架构的特点就是项目拆分成各个子项目,进行解耦 *** 作,提供外部访问接口,属于敏捷开发,其实也可以视为面向接口开发。
一旦有了多个子项目,比如把淘宝网的订单系统和会员系统分开来看,就回产生如何管理接口、负载均衡、高并发情况下怎么限流断路等问题。那么这就有SpringCloud出现了。
那么springCloud的组件大概有哪些呢,我先简单介绍下:
Eureka 服务注册中心
服务消费者 Rest 和 Fegin --消费实现负载均衡ribbon
接口网关Zuul
————————————————
Hystrix 关于服务雪崩的解决方案--服务熔断、服务降级、隔离资源。
看看我是怎么学习SpringCloud的 https://pan.baidu.com/s/16GwFh17fihySHvEVt02OkQ
提取码:86ir
二、 Eureka
eureka是个什么东西呢?它是一个服务注册中心。就拿上面的例子来说,如果要查看会员的订单详情,那么就要在会员系统的tomcat里面调用订单系统的tomcat里的方法。那么直接通过接口访问吗?显然这是不安全的。因此我们需要一个统一管理远程RPC调用的注册中心
————————————————
如图所示,会员系统和订单都是独立能够运行的SpringBoot项目,把SpringBoot注册进eureka中,这样我们就可以通过eureka让会员系统远程调用订单系统。具体配置要怎么做呢?
首先我们要创建eureka注册中心,这里建议用idea的工具创建SpringBoot项目。
————————————————
再次打开注册中心网页,就发现已经注册进去
重复以上步骤把会员系统也注册进去
看看我是怎么学习SpringCloud的 https://pan.baidu.com/s/16GwFh17fihySHvEVt02OkQ
提取码:86ir
三、 PRC远程调用的方法
远程调用的方法有两种,我们一一来细说。
1. 第一种,通过rest的方式来调用,首先我们要导入rest的pom依赖,我们要使用用户调用订单,就在用户里添加调用依赖。先解释一下什么是ribbon-----ribbon是一个负载均衡客户端 类似nginx反向代理,可以很好的控制htt和tcp的一些行为。
————————————————
spring-cloud-starter-ribbon
2. Feigin
Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果。
简而言之:
·Feign 采用的是基于接口的注解
·Feign 整合了ribbon
第一步依然是导入依赖
————————————————
看看我是怎么学习SpringCloud的 https://pan.baidu.com/s/16GwFh17fihySHvEVt02OkQ
提取码:86ir
原文链接:https://blog.csdn.net/weixin_44448094/article/details/88535475
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)