构建微服务-第一章-什么是微服务_005可组合性和可替代性优化

来源:互联网 发布:淘宝时尚潘多拉真假 编辑:程序博客网 时间:2024/05/02 04:59
可组合性

SOA和分布式系统的一个关键特性就是功能的可重用。微服务允许功能被各种方式消费,这对于我们需要考虑客户端将会如何使用我们的服务的时候特别重要。我们只需要考虑桌面或者手机将会使用我们的服务的时代一去不复返了。现在我们需要考虑无数的方式:web应用、本地应用、移动应用、平板甚至可穿戴设备。因为现在的组织都考虑多渠道的应用,那么我们的架构设计也要跟上这个潮流,微服务可以无缝地整合我们的系统。随着环境的改变、我们可以用不同的方式构建我们的系统。在单一系统里,我们只能提供粗粒度的服务给外界。如果你想把服务分解成更小的更有用的部分,我们后面会讨论到如何做。
 

可替代性


如果你在一个中大型组织里工作,你很可能会碰到巨大的遗留系统,没人想去碰它们。这些系统对于公司的运营至关重要,他们是用古老的语言编写的、并且运行在25年前的硬件上,也许有人会问为什么他们还没有被替代?答案其实很简单,替换的风险太大。如果我们的服务的规模小,那么替换的成本就会很容易实现、甚至直接删除,而且很容易管理。
想想我们何时需要删除上100行的代码而无需担心?在微服务架构里,重写或者删除整个服务的代价都很小。使用微服务架构的团队也可以很轻松地重写整个服务,如果不需要这个服务的时候只需要杀死服务的进程。如果一个代码库只有几百行代码、开发人员在面对这写代码时感觉会很轻松、实际上替换这些代码的代价非常小。
0 0
原创粉丝点击