微服务爆炸的治理方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微服务爆炸的治理方法相关的知识,希望对你有一定的参考价值。

微服务现在是趋势,其中大部分是在云上开发的。我有一种情况,我们将大多数单片服务分解为域级微服务。每个问题域只有少量服务。

在亚马逊云中,每个单独的服务将进一步实现多个lambda功能。因为有100个函数都在进行特定类型的活动,每个函数都由各个管道作业部署。

在不久的将来,功能量可能会增加到1000秒。这与我们今天拥有的40个单片应用程序相比。有没有办法分组,可视化,帐户使用指标,成本等?

这种情况与我们在早期版本的spring框架中看到的xml相似或复杂。

答案

首先,如果您要转移到Lambda上的微服务,您可能需要考虑像Chalice这样的框架。这将有助于减少服务的蔓延,但每种情况都不同,所有这些都取决于您绘制有界上下文的位置。

从与您正在开展的类似经历谈起,您将需要在一些领域进行大量投资。首先要有一致的记录方法是关键。您需要将日志一致地发送到单个日志聚合服务,以便您可以轻松地跨所有服务进行查询以获取指标。 CloudWatch,Sumo Logic等可以为此提供帮助。还可以使用X-Ray获得更详细的见解。

您还需要考虑在CI / CD管道中添加一些自动化,以生成Swagger或类似的文档。这应该以一种方式完成,结果是所有服务的可搜索目录以及所有必要的文档。我的经验涉及使用Swagger UI和在每个构建作业上生成和部署的一些自定义html

最后一项建议是投资测试。合同测试和向后兼容性测试是避免部署重大变更的关键。我还会添加功能切换作为另一个可以在这里携带的钥匙。

祝你好运!

另一答案

AWS Lambda支持标记。这是了解Lambda按标签计费的最简洁方法。

您可以标记微服务以进行成本分配和计费。

更多内容:

https://docs.aws.amazon.com/lambda/latest/dg/tagging.html

希望能帮助到你。

以上是关于微服务爆炸的治理方法的主要内容,如果未能解决你的问题,请参考以下文章

不改一行代码,轻松拥有企业级微服务治理|MSE微服务治理专业版重磅发布

在容器云上部署微服务,如何实现微服务治理?

布道微服务_19微服务治理平台的设计与落地

布道微服务_19微服务治理平台的设计与落地

.NETCore微服务之:基于Consul实现服务治理

学习微服务系列:服务治理