BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

一个初创企业的微服务之旅

| 作者 Srini Penchikala 关注 34 他的粉丝 ,译者 Rays 关注 3 他的粉丝 发布于 2017年7月19日. 估计阅读时间: 2 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

近期在QCon 2017纽约大会上,Just Software的CTO Susanne Kaiser做演讲介绍了她的团队是如何实现从单体应用架构转向微服务模型的。

微服务的采纳会伴生有各种复杂性,诸如相互独立的多个服务、运营和通信的复杂性、分区的数据,以及最终一致性的复杂性。这些复杂性对转向微服务提出了一些挑战,例如需要多种技术和工具、核心功能的厘清等。团队依然需要谨慎对待已有的系统,并且转变过程需要比预期更长的时间。

Kaiser指出,事实上从单体应用转向微服务的过程是革命性的。他们转向微服务的做法包括了如下的步骤:

  • 候选者识别;
  • 候选者分解;
  • 微服务生态系统的建立。

微服务建模的核心理念,是建立服务和服务中高度内聚间的松耦合。团队识别了微服务间具有良好定义业务功能的界限环境。候选服务的分解采用如下步骤完成:

  • 抽取Web应用;
  • 抽取业务逻辑;
  • 抽取数据存储。

她还介绍了他们是如何处理服务认证的。一开始他们采用了一种去中心化的模型,但是考虑到认证是一个横切关注点,他们不再让模型是去中心化的。认证基于领域对象层,每个领域对象具有自己的认证处理机制。

微服务生态系统包括CI/CD流水线、监控、日志追踪、中心配置、API网关、服务发现、针对故障的设计、测试(包括API)和开发沙箱环境。他们使用了一系列工具去支持该生态系统,包括JenkinsAnsiblePrometheusGrafana、Spring Cloud (SleuthZipkinConfig)、Pact (CDC-Testing)、Netflix OSS框架(HystrixZuulEurekaRibbon)、Vagrant和VirtualBox。

在演讲的最后,Kaiser总结了他们在微服务转化过程中的经验教训。建立一个微服务生态系统需要一些时间,以及多种技术和工具。由于他们不具备一个明确的架构团队,这延缓了该过程的实现。此外,并不推荐一开始就对大块服务做分解。总而言之,他们转向微服务的过程花费了比先前预期更长的时间。

查看英文原文: Susanne Kaiser on Microservices Journey from a Startup Perspective

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

初创企业就上微服务? by xie loufer

初创企业就上微服务? 这是打算置于死地而后生吗?
产品团队怎么忍下来的?

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT