在过去的五年中,微服务(Microservice)已经成为继敏捷(Agile)、DevOps之后又一个热门话题。然而不幸的是,企业中每个人都有自己对微服务的定义。正如敏捷和DevOps备受推崇后被滥用,微服务似乎也陷入了同样的“罗生门”。
我把日常听到的关于微服务的常见误读,归结为以下十条:
- 微服务是SOA的独门术语
- 管理微服务比管理Monolith更容易
- 拥抱微服务你就可以避免走上XP的不归路(尤其是TDD的地狱)
- 微服务就是使用像Spring-boot这样的Web框架来开发和部署应用程序。
- 微服务是共享公共数据库的小应用程序
- 微服务是使用某些工具构建的应用程序。
* Java平台上的SpringBoot / DropWizard,Docker和K8
* Python平台上的Flask,Docker和K8
* Javascript平台上的Koa / ExpressJS,Docker和K8
- 微服务是可扩展系统的终极方案
- 构建微服务意味着你不得不考虑 以更加模块化的方式构建应用程序
- 构建Monolith和构建微服务并非两个不同的范型
- 最明智的选择是:从一开始就以微服务的方式开始构建系统。
如果你认为上述任何一个说法都是真的,那么你可能需要找本正确的书“洗洗脑”了。
此博客文章首次发布于 : Codonomics
原文
https://www.ctocio.com/ccnews/28429.html