先说结论:微服务是一种开发架构形式。
通过微服务,一个大型应用拆分为不同的组件,这个组件成为服务,每个组件都会被细分为自己的负责的模块。
微服务的特点:
- 每个服务可以用不同的语言调用。
- 每个服务都有独特的功能实现比如用户服务,商品服务。
- 每个服务都可以单独部署开发扩展不影响其它业务。
- 有一个共同的通信协议来进行服务之间的通信。
- 每个独立的服务会有一个小的技术团队负责。
微服务优势:
易于部署,可重用代码,可弹性扩展,适合敏捷开发快速迭代。
微服务缺点:
复杂性较强,不易于维护,需要用很多的辅助组件来实现微服务的目的。搭建起来比较复杂。
一个微服务有哪些部分组成?
- 服务网关
- 服务发现
- 服务治理
- 服务追踪
- 服务监控
- 服务框架
- 基础设施
- 容器编排
- 定时任务
- 分布式配置中心
- 分布式事务
这么多内容可见它的复杂性一斑
微服务整体架构
https://developer.aliyun.com/article/860475