微服务爆炸的治理方法
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
希望能帮助到你。
以上是关于微服务爆炸的治理方法的主要内容,如果未能解决你的问题,请参考以下文章