NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

GOTO Berlin: 使用微服务分拆巨型系统

  • 2013-10-21
  • 本文字数:1032 字

    阅读完需:约 3 分钟

我们是否在构建过于庞大的系统,比实际需要更大的系统,ThoughtWorks 的首席顾问 James Lewis GOTO Berlin 大会上谈论“微服务——自适应的架构和组织”时以此开始了他的演讲。有示例表明所有制总体成本超过 90% 发生在一个系统启动之后。还有很多项目示例显示作为一个产业我们把大量的金钱花在了构建非常大的、复杂的并且根本没有用的系统上。

James 在大型组织中的经验表明,传统的构建系统的方式是将所有的功能放到一个大的应用程序中,使用一个大的数据库,但是这样做产生的问题引导着他进入了另一种构建系统的方式,新的方法将整个业务分离成更小的部分,正如微服务那样,每一个部分有它们自己的数据库。

对于他而言,之所以能够采用这种方式首先是源于六边形(Hexagonal)业务能力,参考了 Alistair Cockburn 的 Hexagonal 架构。一个单独的业务能力或者功能以及它自己的数据形成了一个六边形,一个使用 DDD 条款的有边界的上下文。然后所有的这些六边形会一起被放到一个更大的六边形里面,最终形成了一个系统。

其次,他关注为所有的服务构建一个统一的接口。在构建隔离系统时一种常见的集成技术是直接集成数据库访问。这种方式的问题是,它与系统的不同部分紧耦合,逻辑和数据很容易分散到系统的各个部分,让它变得难以预测变化的影响。James 喜欢使用在Web 上应用地很成功的集成技术,它们基于HTTP、Html 和超媒体,并使用 REST 进行通信。除了 REST 之外,James 还发现了两种非常有用的标准应用程序协议,它们是 Atom AtomPub

James 相信所有的这些小服务都应该遵循单一职责原则(Single Responsibility Principle),同时该原则应该应用到抽象的每一个层次,从对象到子系统业务能力,到形成系统的各个方面。

最后,James 谈到了可伸缩性。构建一个单独的支持所有功能的大系统使得它难以或者说不可能扩展系统的不同部分。即使系统中某些部分负载很高,而其他部分负载非常低,它们也必须以同样的容量运行。如果使用的是微服务,那么它们能够被部署到不同的服务器上,使用不同数量的服务器。另一种好处是不同的服务可以基于不同的平台实现。使用很多小服务的另一个至关重要的因素是自动地监控和部署,例如使用可编程的基础设施。过去这几年虚拟化、基础设施即服务(Infrastructure as a Service,IAAS)的进展让这些成为了可能。

2013 年的 GOTO Berlin 大会是 GOTO 大会首次在 Berlin 举行,本次大会有超过 400 位参会者和大约 80 位讲师。

查看英文原文 GOTO Berlin: Microservices as an Alternative to Monoliths

2013-10-21 06:201414
用户头像

发布了 321 篇内容, 共 116.0 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

区块链项目软件开发

西安链酷科技

区块链 dapp 去中心化 交易所 链游

云网融合再加码!天翼云SD-WAN PON来了!

天翼云开发者社区

云计算

最新Xmind for Mac破解版 附 破解安装教程「支持M1」

iMac小白

XMind下载 XMind2023 XMind Pro

外贸网站如何做好站内优化

九凌网络

外贸网站流量下降可能是这五点原因造成的

九凌网络

API商品数据接口调用爬虫实战

Noah

OP 链 DAPP 智能合约质押挖矿系统开发(Python技术搭建)

V\TG【ch3nguang】

交易所开发 dapp开发:DeFi领域取得成功的综合指南

区块链软件开发推广运营

交易所开发 dapp开发 区块链开发 链游开发 NFT开发

Microsoft Office 2016-2021中文激活版

影影绰绰一往直前

office 2016 office下载 Microsoft Office 2019

第14期 | GPTSecurity周报

云起无垠

深度剖析低代码平台

互联网工科生

低代码开发平台 JNPF

Studio One Pro6(音乐制作编曲软件)中文特别版

影影绰绰一往直前

Studio One 6 Studio One下载 Studio One6破解版

Topaz Video Enhance AI(视频质量增强工具)特别版

影影绰绰一往直前

Topaz Video Enhance AI

官宣|Apache Flink 1.18 发布公告

Apache Flink

大数据 flink 实时计算

外贸独立站谷歌SEO优化:提升网站排名和流量的关键要素

九凌网络

文心一言 VS 讯飞星火 VS chatgpt (122)-- 算法导论10.4 3题

福大大架构师每日一题

福大大架构师每日一题

Nautilus Chain 联合香港数码港举办 BIG DEMO DAY活动,释放何信号?

大瞿科技

Navicat Premium 16(数据库开发工具)中文版

影影绰绰一往直前

Navicat Premium下载 Navicat Premium16 Navicat Premium 16

技术分享| anyRTC低延时直播优化

anyRTC开发者

音视频 CDN 低延时 视频直播 播放器

Comsol Multiphysics mac(建模仿真软件) v6.1完美激活版

mac

苹果mac Windows软件 COMSOL Multiphysics 建模仿真软件

Adobe Acrobat Pro DC 2022 Mac破解版,永久激活版本,中文补丁

晴雯哥

荣耀主题设计师邀请有礼

荣耀开发者服务平台

设计师 资源分享 安卓 ios 活动推荐

虚拟币比特币质押挖矿|算力挖矿模式系统搭建开发

V\TG【ch3nguang】

AE镜头光晕插件Optical Flares for Mac激活版

iMac小白

Optical Flares下载 Optical Flares插件

【论文解读】RLAIF基于人工智能反馈的强化学习

合合技术团队

人工智能 论文 RLAIF

010 Editor for Mac破解版 附 010 Editor注册码 完美兼容M1、M2

iMac小白

010 Editor for Mac 010 Editor下载 010 Editor破解版

直播预告 | YashanDB 2023年度发布会正式定档11月8日,邀您共同见证国产数据库发展实践!

墨天轮

数据库 深圳 国产数据库 yashandb

Macos多协议数据库管理工具:Navicat Premium 16 中文破解版 支持M1

iMac小白

PDF编辑器推荐:Acrobat Pro DC 2023中文破解版 完美兼容M1

iMac小白

Acrobat Pro DC 2023 Adobe Acrobat Pro DC下载 Adobe Acrobat Pro DC破解

Codigger:在线协同开发革新

知者如C

USDT质押挖矿(智能合约)系统开发(成熟技术)

V\TG【ch3nguang】

GOTO Berlin:使用微服务分拆巨型系统_SOA_Jan Stenberg_InfoQ精选文章