关于我们 | 联系我们

AG真人-AG真人官方-网站

成功案例
当前位置:主页 > 成功案例 >

微服务连载(五)不适合接纳微服务的5种场景

本文摘要:以上就是今天的内容总之如果你的应用法式很是大很是庞大为了更好地治理它可以思量接纳微服务架构但如果它运行得很好那就不要盲目追赶这个潮水。 嵌入式应用法式通常在响应时间和可用资源方面具有很严格的限制所以它们的后端通常不太适合接纳微服务架构。在设计嵌入式应用法式时从一开始就要思量如何让维护变得更简朴以及如何让资源使用最优化。微服务通常在资源比力丰裕的系统中容易发挥作用可以降低系统的庞大性。

AG真人官方

以上就是今天的内容总之如果你的应用法式很是大很是庞大为了更好地治理它可以思量接纳微服务架构但如果它运行得很好那就不要盲目追赶这个潮水。

嵌入式应用法式通常在响应时间和可用资源方面具有很严格的限制所以它们的后端通常不太适合接纳微服务架构。在设计嵌入式应用法式时从一开始就要思量如何让维护变得更简朴以及如何让资源使用最优化。微服务通常在资源比力丰裕的系统中容易发挥作用可以降低系统的庞大性。

并不是所有的应用法式都大到足以被拆分成微服务如果当前规模已经恰到利益了把它们进一步拆分成微服务不仅不会降低庞大性反而会让系统变得更庞大。

4. 与遗留系统共舞

如果让这个小团队开发和维护同样的应用法式但改成了微服务架构那么他们的事情量就会显著增加。纵然是做一个很小的改动也需要更多的时间甚至还可能需要修改微服务编排和治理系统。这可能会给运维和开发人员造成压力。

既然微服务这么好为什么不都使用微服务架构呢?事实证明适用于大型系统的架构纷歧定适用于规模较小的系统在设计新系统时所使用的设计方式并纷歧定适适用来维护或更新已有的系统。详细来说以下这五种场景是不适合接纳微服务的。

微服务架构在更新或替换遗留系统方面饰演着重要的角色但整个历程可能很长一个没有计谋指引的迁移很可能会造成灾难性的结果。

2. 小团队大事情

试想有一其中等规模、中等庞大度的应用法式这个应用法式由一个相对较小的团队卖力开发和维护。如果它是一个单体系统服务之间的通信可以很直接可以对一些特定的任务举行优化。

对于熟悉代码的小团队来说维护任务就相对容易。可能有时候开发会有点贫苦但大多数时候是可控的。

微服务是软件架构的银弹吗?或许不是。这个世界上很少有工具是百分百正确的微服务也不破例。

最近技术作家迈克尔·丘奇曼(Michael Churchman)发文分享了在设计或重构应用法式时哪些场景可以使用微服务哪些场景要制止使用微服务。以下为原文编译内容。

3. 小到无法拆分

微服务架构需要分外的开销好比服务设计、服务通信、服务治理和系统资源的使用。接纳微服务架构是有价格的如果一个应用法式无法充实使用微服务的优势那么接纳微服务架构所支付的价格就有点太高了。

AG真人

Martin Fowler 曾经说过:“……除非你的系统庞大到难以治理否则不要思量接纳微服务……”换句话说相比其他因素庞大性是接纳微服务架构最关键的思量因素。

大部门软件开发人员险些天天都要面临遗留代码。如果你正在维护一个遗留系统那么无论它的原始设计何等随意无论它现在变得何等糟糕在把它重组成微服务之前都要认真地思考一下。它正处在生命周期的什么阶段?它是一个任务关键型系统吗(好比包罗了一个不行替代的遗留数据库)?你需要多长时间来替换整个系统?更新或者替换历程需要一个恒久详尽的计划吗?

1. 庞大性不足

5. 精密集成

有些应用法式要求各个组件和服务之间精密集成好比那些需要快速处置惩罚实时数据的应用法式。

在服务之间添加新层会导致处置惩罚速度变慢。如果系统需要快速处置惩罚数据流中的数据(例如来自自动驾驶汽车的传感器数据)那么延迟可能是灾难性的。

这意味着我们可以在不重新设计或更新整个应用法式的情况下更新单个微服务也意味着单个微服务(或多个微服务)发生故障并不会导致整个应用法式瘫痪一个受到攻击的微服务也不会导致整个应用法式变懦弱。

对于庞大的大型应用法式来说微服务架构比单体架构(传统的非微服务架构)具备更高的可治理性。

微服务是一个详细的软件服务通常是基于应用法式上下文而界说的一个规模合理的最小化服务。一个应用法式可以由多个微服务组成这些服务的部署和治理是独立的它们组合在一起实现了应用法式的功效。


本文关键词:AG真人官方,微,服务,连载,五,不适合,接纳,的,5种,场景

本文来源:AG真人-www.qingxiuyuan.com

Copyright © 2007-2021 www.qingxiuyuan.com. AG真人科技 版权所有 备案号:ICP备90038471号-5