微服务架构是当下流行的软件架构风格。
分布式定义:旨在支持应用程序和服务的开发,可以利用物理架构由多个自治的处理元素,不共享主内存,但通过网络发送消息合作。 —-Leslie Lamport (莱斯利·兰伯特)
微服务是一种架构风格
- 由一系列微小的服务共同组成
- 跑在自己的进程里
- 每个服务为独立的业务开发
- 独立部署
- 分布式的管理
单体架构的优点:
- 容易测试
- 容易部署
缺点:
开发效率低
代码维护难
部署不灵活
稳定性不高
扩展性不够
微服务架构的基础框架/组件
- 服务注册发现
- 服务网关
- 后端通用服务(也称为中间层服务Middle Tier Service)
- 前端服务(也称边缘服务Edge Service)
当下最流行的两大RPC框架分别为:
Dubbo
Springcloud
Springcloud是一个开发工具集,含有多个子项目
- 利用SpringBoot的开发遍历
- 主要是基于对Netflix开源组件的进一步封装
- SpringCloud最大的作用是简化了分布式开发