看狂神说SpringBoot写的笔记:https://dwz.cn/P1N121RT
微服务架构–> 模块化,功能化
一台服务器解决不了问题,就增加一台服务器(横向)
A服务器占用90%资源,B服务器占用10% —>负载均衡
如果项目模块化,模块之间怎么通信
微服务架构问题?
1.这么多服务,客服端怎么去访问
2.这么多服务间,怎么进行通信
3.这么多服务,怎么治理
4.服务器死机了,怎么解决?
解决方案:
SpringCloud,可以解决以上分布式架构的4个问题
SpringCloud是基于SpringBoot
1.Spring Cloud NetFlix出了一套解决方案(一站式解决方案)
Api网关,zuul组件
Feign–>HttpClient–>Http
服务注册与发现,Eureka
熔断机制,Hystrix
2018NetFlix宣布无限期停止维护
2.Apache Dubbo zookeper(第二套解决系统)
API:没有,要找其他组件,或者自己解决
Dubbo是一个高性能的基于Java实现的RPC通信框架
服务注册与发现,zookeper:动物园管理者(Hadoop,Hive)
熔断机制:没有,借助了Hystrix
3. SpringCloud Alibaba 一站式解决方案(新东西)
4. 新方案:
服务网格