![InfoQ 2024年趋势报告:架构篇](https://static001.infoq.cn/resource/image/41/ae/41f08d8e698ecc4c36438567a1d2e7ae.jpg)
趋势图更新
今年,我们对去年的InfoQ架构和设计趋势图进行了全面评审,一些主题已被更具体的工具、技术或模式所取代。例如,过去几年包含了几个“为...而设计”的概念,这些概念旨在展示架构师在权衡分析中考虑的“能力”和质量属性。这意味着一些多年来一直出现的主题将不再出现在图中,取而代之的是同一概念更具体的方面。
![](https://imgopt.infoq.com/fit-in/3000x4000/filters:quality(85)/filters:no_upscale()/articles/architecture-trends-2024/en/resources/1architecture-tac-2024-version4-1712073864655.jpg)
例如,“隐私工程”这个主题比“安全设计”更为精确。尽管所有公司都在设计中考虑到了安全性,但隐私工程将用户隐私视为主要设计原则。这种思维方式在行业中仍然相对较新,因此被归为创新者类别。
类似地,绿色软件取代了面向可持续性的设计。这里的创新趋势在于从一开始就考虑系统的碳足迹,而不是在云成本以及相应的能源消耗过高时才做出反应。
蜂窝(Cell-based)架构是趋势图中新出现的内容,位于创新者类别中。蜂窝架构关注服务部署的方式和位置,限制服务之间的通信路径,并将故障隔离在一个单元内,可以提高整体的可用性和容错性。
社会性技术(Socio-technical)架构正在取代“架构即团队运动”,位于早期采用者类别中。这个趋势强调了在设计由多个团队构建和维护的复杂系统时康威定律的重要性。
另一个具体趋势取代一般性概念的是今年将 Dapr 重新引入到图中,取代了“面向可移植性的设计”。
大型语言模型今年从创新者类别转到了早期采用者类别。早期采用者类别中还包括边缘计算,这以前是在云和DevOps趋势报告中跟踪的,现在架构师将其作为创新设计的一个主题。
最后一个变化是将低代码/无代码转到早期大众类别。与其他许多架构和设计趋势一样,这并不一定意味着大多数公司正在积极设计和构建低/无代码解决方案,更确切地说,这是创新水平已经趋于稳定,一些可以被遵循的模式已经确立。
蜂窝架构——创新者
最近讨论的一个值得关注的设计是蜂窝架构。微服务架构通常采用的是“所有服务与所有服务交互”的部署方式。蜂窝架构加入了路由约束,一个服务更倾向于调用同一单元内(通常是一个可用区域)的其他服务。这可以显著节省成本,同时也会因降低延迟而提升性能。如果实现得当,蜂窝架构可以提高可用性,因为故障被限制在一个单元内,其他单元可以完全正常运行。
Roblox、Slack 和 DoorDash 是一些已经采用蜂窝架构并取得显著进步的公司的例子。我们相信这是一个创新者趋势,许多公司将开始采用,因为他们正在尝试找到合适的分布式系统规模、控制成本并提高系统的弹性。
更多信息请参阅:
隐私工程——创新者
安全一直是好软件架构的一个重要方面,但我们看到了“隐私工程”出现在创新者类别中。这里的创新在于从一种被动的心态,例如响应 GDPR、CCPA 或其他法规要求,转变为一种积极主动的心态,即用户及其数据的安全性是首要的设计考虑因素。DoorDash 就是一个例子,它依赖了个人数据(如地址),并在送货完成后主动模糊化或删除这些数据。
更多信息可参阅:
绿色软件——创新者
尽管有很多关于设计可持续、绿色的软件系统的讨论,但并没有证据表明整个行业在取得进展。因此,我们认为绿色软件是一个创新者趋势,不属于早期采用者类别。2023 年伦敦 QCon 大会有一个关于可持续性的专题,其中包括许多关于如何将可持续性纳入到架构考量中的想法。然而,目前还没有太多公司从一开始就引领设计绿色软件。
更多信息请参阅:
2023 年伦敦 QCon 大会以可持续性为重点的架构专题演讲。
社会性技术架构——早期采用者
社会性技术架构是今年的一个新趋势,它涵盖了几个相关的想法。一个是架构师的角色,即以前的“架构即团队运动”或“架构师即技术领导者”。它强调任何人都可以做出架构决策,并且架构师有责任指导和教导其他人。社会性技术架构的另一个方面涵盖了团队拓扑和康威定律。
越来越多的公司开始意识到一个系统的设计必须考虑到所有参与构建、支持和维护系统的人。虽然任何一个单独的概念可能已经进入了早期大众阶段,但整体的社会性技术架构目前还处于早期采用者阶段。
更多信息请参阅:
大型语言模型——早期采用者
大型语言模型正在迅速得到采用,许多公司正在寻找将它们整合到系统中的方法。然而,除了聊天机器人和检索增强生成(RAG),新的实现类型很有限。在本报告中,我们试图在描述 LLM 时尽量缩小其范围,不使用“包罗万象但在很大程度上毫无意义“的“AI”一词。
虽然我们无法预测未来,但接下来的一年我们可能会看到围绕 LLM 的一些显着的创新,可能会衍生出新的创新者趋势。
更多信息请参阅:
关注 InfoQ 网站上与大型语言模型相关的主题。
平台架构——早期采用者
一些公司提供用于构建平台或辅助平台工程的产品,这通常是一种迹象,表明某种趋势已经跨越了鸿沟,得到越来越多的采用。然而,在平台工程影响架构和系统设计以及架构概念影响平台工程之间的交叉点上存在重度的创新趋势。这可能是一种共生关系,架构受到平台上可用内容的影响,并且平台随着新的架构演变而演变。
对架构师来说,平台工程很重要,因为你构建的平台决定了你要选择怎样的架构。
更多信息请参阅:
关注 InfoQ 网站上与平台工程相关的主题。
边缘计算——早期采用者
边缘计算是另一个已经跨越了鸿沟到了 InfoQ DevOps 和 Cloud 趋势的早期大众阶段,现在它作为架构和设计的早期采用者趋势出现在这里。在大多数情况下,边缘计算通过减少用户与其访问的数据或计算之间的延迟来提高性能,这在世界上的某些地区可能非常重要。
架构师不仅仅是在应对延迟问题,而更多的是在设计边缘系统。这可以降低成本,提高可靠性,并减少环境对系统的影响。
更多信息请参阅:
关注 InfoQ 网站上与边缘计算相关的主题。
数据驱动架构——早期采用者
系统架构决策的相当一部分与系统中的数据有关,识别出具有广泛适用性的趋势可能具有一定的挑战性。数据驱动架构的类别代表了复杂的分析平台从附加组件、相邻组件到交易系统的核心部分的转变。
例如,ML 模型现在用于对数据和事件进行几乎实时的分析,然后驱动系统中的其他行为。这意味着这些分析元素是系统的一等元素,架构师需要将它们设计得具有与任何其他主要系统组件一样的弹性、性能和可观察性。
一个相关的趋势是 MLOps,它是数据驱动架构和平台工程的交集。由于存在这种重叠,MLOps 并没有被视为架构和设计的一个单独的趋势。
更多信息请参阅:
关注 InfoQ 网站上与数据相关的主题。
原文链接:
评论