【SpringCloud】(一)分布式理论

分布式架构理论

方法远程调用

各个模块运行于不同的tomcat,模块之间通过网络进行调用。

远程调用的技术演进
1 WebService

解决应用程序之间的跨平台访问问题,基于SOAP/WSDL协议,让应用程序之间可以远程访问。

2 Dubbo + Zookepper

Dubbo:基于RPC的程序远程调用框架

Zookeeper:基于树形目录结构、异步通知机制的注册中心。

SOA与微服务

SOA

SOA全称Service Oriented Architecyure(面向服务架构),即在同一个系统中将相同的功能抽取出来,作为一个服务供其他模块使用。

服务消费者提供者

微服务

微服务在SOA引进,强调独立可部署

SpringBoot与SpringCloud
SpringBoot

开发微服务,使用场景启动器(starter)快速整合第三方中间件

SpringCloud

提供的微服务服务架构的一站式解决方案快速整合第三方中间件

  • Eureka:注册中心

  • Ribbon:客户端负载均衡

  • Feign:远程接口调用

  • Hystrix:服务的熔断、降级、监控

  • Zuul:网关

注册中心

远程接口调用之所以能够实现,就是因为Dubbo或者Feign这样的框架把服务的具体信息存入了注册中心,对程序员在上层具体编写代码屏蔽了细节。

缺点

数据不一致问题:

  • session不一致问题

  • 分布式事务问题

分布式与集群的区别

分布式与集群都需要多台服务器,区别在于分布式每个服务器运行的模块不同但是集群是相同的。

posted @ 2022-10-11 21:42  Tod4  阅读(30)  评论(0编辑  收藏  举报