BT

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

微服务与演化架构

| 作者 Jan Stenberg 关注 29 他的粉丝 ,译者 韩陆 关注 11 他的粉丝 发布于 2015年3月13日. 估计阅读时间: 2 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

面向服务架构 (SOA)带给我们的思考不仅是拆分大型的系统为个性化的服务,还包括使用集中控制和编排工具去构建生产者驱动的庞大服务。Rebecca ParsonsQCon伦敦大会的演讲中指出,微服务带我们重新思考为什么SOA是有道理的这一基本概念。他谈到了如何将微服务作为推动者,使系统更加灵活地应对业务预期的速度和规模上的变化,以及为什么一直以来持续交付(CD)适应微服务的能力如此重要。

ThoughtWorks的CTO、Parsons认同SOA鼓励了更多人去接受最终一致性和使用其他类型的数据库取代关系型数据库,但在放弃事务的ACID这点上还存在很多阻力和不决。

当将目光移到微服务架构时,Parsons强调,无论是分解现有的单一系统还是开始没有遗留系统的新系统,服务的粒度是至关重要的,建议使用领域驱动设计 (DDD)中定义的限界上下文,找到分离服务的边界,这必须用业务角度,而不是技术角度对业务能力的思考来完成的。内聚性和耦合性、通信模式和数据架构是发现服务的其他因素。通信紧密的部分或者有利于数据共享的部分处于同一服务。

对于Parsons来说,演化架构是一系列的原则,其中一个重要的原则是如何处理系统中最容易被改变的部分。在单一系统下工作时,为此,我们经常预测会用未来3-5年来构建系统。今天我们尽可能地拥抱变化,即使变化超出预期。关注于演进是关键的因素,微服务是用于支撑这点的基础的一部分。

微服务上承载了额外的功能以运行部署、管理、监控以及与服务的数量和规模相关的活动。如果没有一个强大的devops文化,以及开发人员和运营人员之间的密切沟通,这将是场灾难。幸运的是上述功能多半已经在持续交付(CD)中提供,持续交付正致力于简化运营团队对微服务架构的管理。

Parsons最后强调了微服务不是银弹,并非所有的问题都应该用微服务来解决。

查看英文原文:http://www.infoq.com/news/2015/03/qcon-microservices-architecture


感谢丁晓昀对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

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

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的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通知我

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

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

讨论

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


找回密码....

Follow

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

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

Like

内容自由定制

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

Notifications

获取更新

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

BT