什么是微服务?
已经使用微服务框架一年多了,而且有一个项目还自己搭建了微服务框架,但是有一次有人问我什么是微服务?然后我回答得比较混乱,首先是因为我对这个概念比较模糊,第二是因为每个人的看法不同。
微服务是James Lewis和Martin Fowler在2014年3月25日在《Microservices》文章中首先提出来的,文章地址https://martinfowler.com/articles/microservices.html。
根据《Microservices》这篇文章我认为:
- 微服务是一种架构风格。
- 一系列微小的服务共同组成。
- 跑在自己的进程里。
- 每个服务为独立的业务开发。
- 独立部署。
- 分布式管理。
分布式的定义:旨在支持应用程序和服务的开发,可以利用物理架构由多个自治的处理元素,不共享主内存,但通过网络发送消息合作。