微服务被期待用来提高系统整体的敏捷性。这不仅是一个技术问题,也是一个团队问题。如果您的团队不从组织的角度来接受微服务,没有技术可以帮助您。

虽然构建微服务看起来很简单,但实际上还有很多工作要做。微服务系统是分布式系统,因此涉及到分布式计算定律。失败也是不可避免的。每个微服务都应该拥有它的数据,您通常需要多个持久性技术。

为了构建微服务系统,有几个主题需要进一步研究。首先,为了实现承诺的敏捷性,您将更频繁地部署不同的微服务。因此,持续交付是关键。您还需要尽可能地自动化您的微服务的发布和部署。不要忘记您的微服务是可替换的,并且当规模比较大的时候不可变的镜像交付是一个必须具备的特性。

但是,如果我们部署的微服务是不可变的,那么我们如何传递配置信息并可能重新配置它们呢?例如,如何更改日志级别、配置数据库位置和凭据、切换特性,等等?配置是分布式系统的一个非常重要的组成部分,很难使用微服务。所有的系统都是不同的,没有银弹,但是有各种各样的解决方案,从环境变量到Git仓库和专用配置服务器。云平台也提供了配置功能。为了减轻这种多样性,Vert.x可以从几乎任何地方检索配置。

一旦您部署并配置了您的微服务,您就需要使您的系统正常运行。日志、度量和跟踪是设计和开发微服务系统时要记住的重要问题。您必须检索已记录的消息、度量和来自您的微服务的跟踪,以便将它们聚合成一个集中的方式,以实现相关性和可视化。虽然日志和监视通常很好理解,但分布式跟踪常常被忽略。然而,跟踪在微服务中是无价的,因为它们将帮助您识微服务之间的瓶颈,并且使您对系统的响应性有一个很好的概念。

results matching ""

    No results matching ""