在这篇文章中,Orbitz 的前架构师主管 Brian Zimmer 对可伸缩性的最差实践进行了论述。涵盖的主题包括金锤子、资源滥用、大泥球、依赖管理、超时、英雄模式、非自动化和监控。
操作问题普遍的解决方案是有一个“英雄”(关键性人物),他能处理、并经常处理大部分的操作需求。在小规模环境中,当某个人有熟悉整个系统(包括保持系统 正常运行的许多细节之处)的天赋和能力时,英雄模式可以正常运行。尽管这是最常见的实施方案之一,但对拥有许多组件的大型系统而言,这种方法就不能进行伸 缩扩展了。 在没有形式说明的情况下,“英雄”往往要理解服务依赖,牢记如何开、关特性,或了解其他人已经遗忘了的系统。“英雄”虽然至关重要,但他不应该是一个个体。
更多内容推荐
研发团队应该如何进行职责分配?
当所有条件都一样时,我们要把团队的结构安排得尽可能好,这样才能让他们完成的工作最大化。
架构概述之架构演化、模式与核心要素
如何打造一个高可用、高性能、易扩展、可伸缩且安全的应用系统?相信这是困扰着无数开发者的难题,在这里我们以一个网站为例,来讨论一下如何做好大型应用系统的架构设计。
2021-05-12
软件架构可能不是你想象的那个样子
软件架构是一个常常被人误解的概念。
DevOps 已死,平台工程才是未来
什么是平台工程?
高效能敏捷交付团队反思:特性团队 (FeatureTeam)+Scrum
这是《研发效能组织能力建设》的第三篇。特性团队和Scrum,这两个定义我们在之前的文章中都详细介绍了。这两个组织模式或者说管理实践,我都用过所以有些时候特别有感触。书本上纯粹的模式很容易理解,但是具体工作中运用这是非常考验团队和人的。。。
2022-10-18
mixin 模式
2022-09-08
架构设计文档:软件架构设计文档的写作模式
2022-09-10
百万年薪架构师是如何炼成的?
2020-09-03
如何处理分布式系统中的紧急情况?
由于发生意外或遭受攻击,任何分布式系统都可能会遇到紧急情况。
别再错了,数字化转型与数据和应用程序无关,而与流程有关
当领域是流程管理时,通常会导致过度的复杂性和工作量;它还会(错误地)过度减少主动流程,使得由数据更改触发的自动化快速爆发。有一个更好的方法可以做到这一点:从流程开始。
复杂系统是如何失败的?
本文聚焦复杂系统,讨论了复杂系统的故障本质、如何评估故障、如何给故障归因等话题。
不要让框架影响你最初的架构设计
在真正需要之前,不要对任何特定的框架、模式或策略过多投入。
架构师必须了解的 5 种最佳软件架构模式
在本文中,我们将看看什么是软件架构模式,并对其中一些模式进行详细介绍。请记住,可以在单个系统中使用许多模式,用最好的设计来优化每一部分代码。
为什么变更感知对现代应用程序的排障工作非常重要
变更感知往往是事件管理中的缺失部分。成功地关联监控和可观测性数据能够让工程师更快到达根因。遥测提供的构建块使变更感知能够基于系统中的变更及其广泛影响来识别并映射根因。
在 Kubernetes 上设计和部署可扩展应用的 15 条原则
本文最初发表于Elastisys的技术博客,经原作者Lars Larsson授权由InfoQ中文站翻译分享。
SOLID 仍然与现代软件架构相关吗?
SOLID 原则适不适用于微服务?
设计模式案例:Intel 大数据 SQL 引擎 &Panthera 设计模式
2022-09-10
微服务下分布式事务模式的详细对比
本文总结了各种分布式事务实现模式的差异,并给出在不同的业务场景中,该选择什么样的模式来实现分布式事务。
CAP 原理与 NoSQL 数据库架构
2022-09-10
40|职业成长(上):架构师成长的必要条件是什么?
在我看来,思考力、信息优势和适应力就是一个优秀架构师成长的必要条件,已经足够了。
2022-05-31
推荐阅读
6. Seata AT 事务模式
2023-02-15
数据分析思维能力模型培养
2022-11-07
平台工程中认知负荷的挑战
为什么你的大多数监控策略都失败了
1. 轻松理解事务原则 ACID
2023-02-15
DevSecOps,将安全性集成到软件开发的每一个阶段
在 DevOps 引入产品思维:将想法转化为优质产品的手段
电子书
大厂实战PPT下载
换一换 蔡超 | Mobvista 技术 VP 兼首席架构师
郑吉敏 | 去哪儿网 技术总监
黄玉奇 | 阿里云 高级技术专家
评论