springcloud(一)微服务

365 阅读1分钟

微服务是一种架构风格

SpringCloud是一套开发工具集,简化了分布式开发

定义

  1. 由一系列微小的服务组成
  2. 拥有独立的进程
  3. 每一个服务依据各自的业务进行开发
  4. 独立部署
  5. 分布式的管理

演进

AllInOne -> MVC -> RPC -> SOA

单体服务

优点

  1. 容易测试
  2. 容易部署

缺点

  1. 开发效率低
  2. 代码维护难
  3. 部署不灵活
  4. 扩展性不高
  5. 稳定性不高

分布式定义

  • 多个自治的处理元素
  • 不共享主内存
  • 通过网络发送消息合作

CAP原则

  • 一致性(Consistency)
  • 可用性(Availability)
  • 分区容错性(Partition tolerance)

基础框架/组件

  • 注册中心
  • 服务网关
  • 后端通用服务(中间层服务Middle Tier Service)
  • 前端服务(边缘服务Edge Service)