当系统成长的时候,大家都想到“微服务”。
微服务太火,好像成了理所当然。但应该考虑微服务是否适于这个团队。
对于微服务本身,正反两方驱动力讲得比较多了1。
而微服务落实到团队,需要考虑更多:文化需要推广?团队需要重组?技能需要学习?过程可能调整?平台需要验证?……
对照团队现状和发展步调,我们必须知道能得到什么,又需要付出什么。
想要提高可用性?可能只需要多份部署。
想要改善逻辑结构?可能只需要开发时模块化。
想要错误隔离?可能只需要分布式。
想要解耦和可重用化?可能只需要服务化。
……
微服务是一套工具,而不是一件。团队可以做出裁剪,也可以做出渐进策略。