写点什么

微服务与单片应用之间的较量

  • 2014-08-22
  • 本文字数:800 字

    阅读完需:约 3 分钟

采用微服务是分解单片应用(monolithic application)的一种方式。这样做可以获得更高的解耦程度、关注点分离,以及快速部署等优势。但是,这并不是唯一也不是最好的方式。 Todd Hoff 对这两种架构方式进行了描述与比较

Todd 提到了今年早些时候在 twitter 上发生的一场辩论,这场辩论的参与者包括了 Adrian Cockcroft Sam Newman John Allspaw ( Etsy ),他们对微服务和单片应用之间的优缺点进行了比较。该辩论首先由 Adrian 发起,他声称在听了 QCon 伦敦 Etsy 的演讲之后,让他更清晰地认识到为什么单片应用是一个死胡同,而微服务应该可以取而代之从而能获得持续的可伸缩的部署。John 则指出,虽然微服务带来了更多的选择,但同时引入了更多的约束。而少量较容易理解的工具和模式反倒能带来优势。

Todd 将 Etsy 描述为一家成功的公司,因为该公司拥有着大约 150 个工程师,并且每天会部署超过 60 次的单个单片应用。在他的印象中,虽然很多人将单片应用视为反模式,但是 Etsy 通过采用例如持续集成、自动化部署、良好的监控等手段构建了这个大型的网站,并且做得很好,而且他们基本上都是从主分支进行部署的。

一个用于针对所谓的单片应用问题的解决方案是将它分解成一系列微服务,从而达到松耦合和独立部署这样的目标。但是 Todd 提出了质疑,微服务是达到上述目标的唯一或者最好的方式吗?他指出 Etsy 一天发布多次小型变更的方式也是可选方式的一个现成的例子。

Todd 强调 Etsy 目前一直在单片应用的方式下工作地很好,从而表示了对单片方式的支持。因为即使是在一个单片应用中,复杂度也可以被封装到每个服务之中。他将服务与代码库进行了比较,并表示只要是足够稳定的接口,也可以像拥有自己生命周期的独立产品一样对待。一旦接口发生变化,不管是使用代码库还是服务,新的版本就会创建。Todd 相信,只要基于合适的软件工程,单片的程序也可以工作地很好。

查看英文原文: Microservices vs Monolithic Applications

2014-08-22 00:391519
用户头像

发布了 52 篇内容, 共 23.1 次阅读, 收获喜欢 5 次。

关注

评论

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

TiDB in SaaS丨TiDB 在 Moka BI 场景下的应用

TiDB 社区干货传送门

实践案例

火山引擎ByteHouse联合Apache Airflow,让数据管理更加高效

字节跳动数据平台

数据库 大数据 云原生 数仓 企业号11月PK榜

为什么OpenAPI是未来企业数字化转型的决定性因素

华为云PaaS服务小智

云计算 软件开发 华为云

《央国企数字化产业赋能图谱》编制及申报开启

信通院IOMM数字化转型团队

IOMM 央国企数字化转型 央国企数字化产业赋能图谱

手把手教你如何扩展(破解)mybatisplus的sql生成 | 京东云技术团队

京东科技开发者

mybatis sql MyBatisPlus Mybatis-Plus 企业号11月PK榜

DataGrip 2023 Mac(多引擎数据库管理工具)

展初云

Mac datagrip 数据库软件

一起学Elasticsearch系列-Mapping

Java随想录

Java 大数据 搜索 ES

TiDB快速部署工具

TiDB 社区干货传送门

实践案例 集群管理 管理与运维 安装 & 部署

CCIA数安委等组织发布PIA星级标识名单,合合信息再次通过数据安全领域权威评估

合合技术团队

人工智能 合合信息 个人信息保护 PIA

云时代,如何保障运维安全?

尚思卓越

运维 网络安全 堡垒机

同盾科技 x TiDB丨实时数据架构为风控智能决策保驾护航

TiDB 社区干货传送门

实践案例

多维详述MediaBox互动直播AUI Kit低代码开发方案

阿里云CloudImagine

云计算 视频云

高级加密货币交易所软件演变:2024 年主要趋势和策略

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 NFT开发 公链开发

AI引领搜索智投新时代 | 百度营销推出“AI投放项目”

Geek_2d6073

谈谈压测方案的那点事 | 京东物流技术团队

京东科技开发者

测试 性能测试 压力测试 企业号11月PK榜 大促备战

远程运维的定义以及优点详细讲解-行云管家

行云管家

运维 IT运维 远程运维 运维软件 协同运维

新方向!文心一言X具身智能,用LLM大模型驱动智能小车

飞桨PaddlePaddle

人工智能 文心一言

Project Office X for Mac项目管理工具

展初云

Mac 项目管理软件 Project Office X

PDF Reader Pro 3.0 for mac(pdf阅读器)

展初云

Mac pdf阅读器 PDF Reader Pro

Amazon EC2 Serial Console 现已在其他亚马逊云科技区域推出

亚马逊云科技 (Amazon Web Services)

API cli iam Amazon EC2

Deckset for Mac(MD文档转幻灯片软件) 2.0.27中文激活版

mac

苹果mac Windows软件 Deckset 演示文稿制作软件

EC2的置放群组

孤虹

亚马逊云 EC2 置放群组

源译识 | 译文分享:Elasticsearch诉Amazon商标侵权案

开放原子开源基金会

价值:我对工作的思考

老张

价值 职场经验

【论文解读】针对生成任务的多模态图学习

合合技术团队

人工智能 机器学习 深度学习 论文 多模态学习

一分钟带你了解光模块

小魏写代码

从 Oracle 迁移到 TiDB 的方案设计与用户实践

TiDB 社区干货传送门

实践案例

go 中的循环依赖

EquatorCoco

Go 编程语言 循环依赖

微服务与单片应用之间的较量_SOA_Jan Stenberg_InfoQ精选文章