SpringCloud学习记录

微服务架构设计

为什么需要微服务架构?

  业务需求推动架构设计。最早的时候我们都是单体应用。一个应用中包含多个模块。服务只需要部署一个。就可以满足业务需求。
  随着业务的复杂度越来越高,模块越来越多。单体应用耦合度越来越大,对于应用的扩展和维护都变得异常复杂。往往需要牵一发而动全身。为了解决这个问题。SOA结构应运而生。
  SOA服务:面向服务编程。相当于将我们单体应用中模块抽取成一个一个的服务。这样的话,整体的耦合度就降低了。
  微服务架构,是对SOA架构的一种扩展。他们都是面向服务编程,只是微服务的划分力度更小。微服务着重强调这个。它更加的轻量级,标准化。

分布式系统的CAP问题?

  C:数据一致性
  A:高可用性
  p:分区容错性(一定要满足的)
  CAP不可能同时满足。要么是CP,默认是AP。

引入微服务会带来哪些问题?

  1. 数据一致性问题
  2. 网络通信问题
  3. 限流与熔断机制
  4. 调用链路跟踪
  5. 集群监控
  6. 用户登录与权限

  SpringCloud为基础的微服务架构,它的生态技术基本成熟。对于引入的微服务问题,大部分都提供了解决方案。但是近几年NetFilix Eureka为代表的spring cloud核心组件纷纷停止更新。加上组件设计老旧,在性能上无法满足互联网大厂的需求,springcloudAlibaba在这种场景下诞生了。

  SpringCloudAlibaba是国产的微服务一站式解决方案&

你可能感兴趣的:(SpringCloud,spring,cloud)