知识卡片

微服务真正的代价是把ESB拆散成了基础设施

普通读书笔记卡 · 1686.b

内容

微服务真正决定成败的特性是”automated”(自动化),而非”small”或”lightweight”——粒度划错了还能拆服务、合服务补救;但服务发现、路由、容错等基础设施没跟上,微服务就会变成焦油坑。本质上微服务没有减少复杂度,只是把 SOA 里 ESB 的功能拆成了独立基础设施,复杂度从通信层转移到基础设施层。发散:可借助开源基础设施组件按优先级逐步补齐,不必一步到位。

参考来源

- 位置:《从0开始学架构》第40章《35|微服务架构最佳实践-方法篇》(源文件:_epub-src/OEBPS/Text/part0039_split_004.html) - 结论依据:原文明确"真正决定微服务成败的,恰恰是那个被大部分人都忽略的'automated'。为何这样说呢?因为服务粒度即使划分不合理,实际落地后如果团队遇到麻烦,自然会想到拆服务或者合服务;如果'automated'相关的基础设施不健全,那微服务就是焦油坑",并总结"微服务并没有减少复杂度,而只是将复杂度从ESB转移到了基础设施"。 - 原始内容:真正决定微服务成败的,恰恰是那个被大部分人都忽略的"automated"……如果"automated"相关的基础设施不健全,那微服务就是焦油坑……微服务并没有减少复杂度,而只是将复杂度从ESB转移到了基础设施。你可以看到,"服务发现""服务路由"等其实都是ESB的功能,只是在微服务中剥离出来成了独立的基础系统。