Select your cookie preferences

We use essential cookies and similar tools that are necessary to provide our site and services. We use performance cookies to collect anonymous statistics, so we can understand how customers use our site and make improvements. Essential cookies cannot be deactivated, but you can choose “Customize” or “Decline” to decline performance cookies.

If you agree, AWS and approved third parties will also use cookies to provide useful site features, remember your preferences, and display relevant content, including relevant advertising. To accept or decline all non-essential cookies, choose “Accept” or “Decline.” To make more detailed choices, choose “Customize.”

云架构俭约之道:企业架构七大黄金法则丨re:Invent 2023 Werner 20年架构经验分享!

re:Invent
Amazon CloudWatch
2023-12-04
0
0
2023亚马逊云科技 re:lnvent 进入第四天,**Amazon.com 副总裁兼首席技术官 Werner Vogels 博士**在主题演讲中,为我们带来了**云架构俭约之道(The Frugal Architect**)这一全新理念。**Werner 从他过往20年经验中摄取灵感,为架构师和构建者们提供了有关架构设计、衡量、优化的范本教程**。他表示:“作为技术人员,我们生活在一个变化如此之快的世界中,我们总是需要不断学习。请坐下来,拿出你的笔记本,从这一刻开始做笔记。”  ![image.png](https://dev-media.amazoncloud.cn/cf3ed87d2d94470aaabcc35ecb092043_image.png "image.png") **他指出,俭约之道的关键点不仅在于节省金钱成本,更重要的是节约资源**。而现在,技术发展与 AI 模型更新带来的大量资源消耗已经是一个亟待关注的问题。他说:“成本是可持续性的近似代理,这是我关注的问题,也应该是你们关注的问题。” Werner 博士引用了一家荷兰文件传输服务公司 WeTransfer 的例子,他们通过使用亚马逊云科技,在2022年实现了从服务器使用中减少78%的碳排放。而这一改变源自接下来讲到的七大黄金法则——Werner 博士从他20年来的架构经验讲起。 ![image.png](https://dev-media.amazoncloud.cn/fbaa9ee8453d4588b4f35e0a11d3c4fb_image.png "image.png") ### **企业架构的七大黄金法则** #### **法则一:把成本视作非功能性的需求** **核心要点:在设计架构的每一步都考虑成本因素** ![image.png](https://dev-media.amazoncloud.cn/7343c651cfcb4dc1b32d7d83c93bd512_image.png "image.png") 在设计系统时,像安全、合规性和可访问性这样的事项是非功能性、不可谈判的要求。它们不会直接影响特定的特性或功能,但对系统的运行是必要的。 Werner 博士在演讲中分享道:“**组织也需要将成本和可持续性视为非功能性要求**。如果成本不是设计过程的一部分,组织就有可能面临成本超过收入的风险。” **通过在早期阶段思考并持续考虑成本的影响,我们可以针对性地设计系统,以实现特性、上市时间和效率之间的平衡**。如此一来,开发团队可以专注于维护精益高效的代码。运营团队则可以微调资源使用和支出,以最大化盈利能力。 #### **法则二:可持续的系统是和业务充分共识成本的系统** **核心要点:偿还你的架构债** ![image.png](https://dev-media.amazoncloud.cn/ae1455f640a342acbafe05e726795f9c_image.png "image.png") **技术团队不应独自进行系统设计,而应在架构设计过程中与业务团队紧密合作,进行成本考量,并确认所使用的收入模型以及盈利维度**。遵循这一原则,就能够构建其遵循资金流的架构,并能够匹配相应的定价模型。 例如,在电子商务领域,一个关键维度可能是订单数量。随着订单数量的增加,基础设施和运营成本也会相应上升。然而,如果系统架构良好,就可以开始利用规模经济。重要的是,基础设施成本对业务的影响应该是可以衡量的。 **作为构建者,我们需要考虑收入,并利用这些知识来指导我们的选择**。因为不惜一切代价的增长会导致一系列的损失。 #### **法则三:在持续的取舍与权衡中搭建架构** **核心要点:确立你的优先级** ![image.png](https://dev-media.amazoncloud.cn/157eebd406514bf08b0115378cf868b3_image.png "image.png") 在架构中,每个决策都伴随着一系列的权衡。**成本、弹性和性能是经常相互矛盾的非功能性需求。** 俗话说,“万事皆有不确定性” 。能够防御失败意味着需要投资于弹性,但同时性能可能会付出代价。**关键是要在技术和业务需求之间找到正确的平衡点,找到与您的风险容忍度和预算相一致的最佳点**。请记住,节俭是为了最大化价值,而不仅仅是最小化支出。为了做到这一点,您需要确定您愿意支付的费用。 ##### **重磅发布 Amazon Management Console myApplications** **通过提供全面的仪表板来监控和管理应用程序的成本、健康状况、安全性和性能**,增强了亚马逊云科技管理控制台的体验。 ![image.png](https://dev-media.amazoncloud.cn/e72e25fb49ba460fac2e5a104046e04a_image.png "image.png") ##### **重磅发布 Amazon CloudWatch Application Signals** **自动化工具和运营应用,旨在解决监控具有多个相互依赖服务的分布式系统的复杂性**。它提供了一个预构建的仪表板,可用于追踪关键应用程序业务指标,如请求量、可用性和延迟。 ![image.png](https://dev-media.amazoncloud.cn/a4df7e0058ce4a4fa05410f5a23f4264_image.png "image.png") #### **法则四:未观测到系统将带来未知成本** **核心要点:定义你的衡量单位** ![image.png](https://dev-media.amazoncloud.cn/682da823444045198e1b3ba46e670a16_image.png "image.png") Werner 博士分享了一个阿姆斯特丹老房子的例子,将电表放在走廊上比藏在地下室的房子会使用更少的能源,其原因在于他们每天都可以看到能源消耗。 换句话说,如果您不观测系统,就无从知道它们的成本。而当您了解每个级别的成本时,虽然观察需要投资,但当关键成本指标放在工程师和他们的业务伙伴的核心位置时,更可持续的实践会自然而然地出现。持续的检查会让您发现过度支出的问题,并调整操作以削减开支。**可观测性的投资回报通常远远超过成本。** 最重要的是,**将成本放在前面可以鼓励可持续的实践。** #### **法则五:通过成本感知的架构,实施成本控制** **核心要点:建立层级** ![image.png](https://dev-media.amazoncloud.cn/4db55d3ba41943179a7b6ad9143a730b_image.png "image.png") **俭约云架构的本质是强大的监控和优化成本的能力**。设计良好的系统可以让您有进一步创建成本控制的机会。**常见的方法是按关键性分层组件**。第一层组件是必不可少的,无论成本如何,都要进行优化。第二层组件很重要,但可以在没有重大影响的情况下暂时缩小规模。第三层组件是是有效但非必要的,需易于控制且可以根据需要降低成本。 **定义层次结构可以在成本和其他要求之间进行权衡。对组件进行细粒度控制可以优化成本和体验**。基础设施、语言、数据库都应该是可调整的。以收入和利润为目标来设计和构建系统。成本优化必须是可衡量的,并与业务影响相关联。 #### **法则六:成本优化是渐进的** **核心要点:持续优化** ![image.png](https://dev-media.amazoncloud.cn/0f7f31236412410a8485295761305af5_image.png "image.png") **追求成本效率是一个持续的旅程**。即使在部署之后,我们也必须重新审视系统,以逐步改进优化,关键在于不断质疑和深入探究。编程语言提供了分析代码性能的分析工具,虽然这些工具需要设置和专业知识,但它们可以进行细粒度的分析,从而导致毫秒级的变化。看似微小的优化在规模上累积起来,可以节省大量的开支。 在运营中,可能存在大部分时间都花在运行现有系统上的情况。对资源使用情况进行分析,并识别浪费的机会较少。在亚马逊,我们不断监控生产中的服务,以了解模式并优化低效率。俭约需要坚持不懈——通过逐步减少服务延迟和基础设施成本,我们可以优化服务成本。 如果我们不断寻找,总会有改进的空间。我们今天节省下来的资金将为明天的创新提供资本。 #### **法则七:走出惯性,远离盲目** **核心要点:证伪你曾相信的事情** ![image.png](https://dev-media.amazoncloud.cn/217311d5345640b49cb46e213dca3181_image.png "image.png") 当软件团队在未遭遇重大失败或阻碍的情况下取得显著成功时,他们可能会滋生出自满情绪。这是一种潜在的危险倾向,因为它可能导致团队成员对那些已取得成功的策略、工具和实践过于自信。 当涉及到编程语言时,软件团队常常容易陷入这样的误区,即他们假设当前使用的技术、架构或编程语言永远是最佳选择,仅仅因为它们在过去的表现良好。然而,这种心态可能会产生一种虚假的安全感,阻碍他们质疑现有的方法和探索新的选项,**我们必须始终寻找质疑、优化和改进的方法**。 正如 Grace Hopper 所说,英语中最危险的短语之一是:“我们一直都是这样做的。”这句话的危险性在于它阻碍了学习和改进。 ### **新时代下的预测与见解** “技术可以成为一种力量,”在 Werner 博士分享的第二篇章,他分享了像 Thorn、国际水稻研究所和 CergenX 这样的组织的故事,这些组织正在使用 AI 方案来解决现实中遇到的实际问题。这些“传统”的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)和人工智能技术正在为农业、行政和医疗领域做出重大贡献。**在新式 AI 层出不穷的时候,回归 “AI for Now” 和 “AI for Good” 的初心是这些场景中的核心关键点。** 这些努力激发了 Werner 博士的灵感,他开始创建一个有益的以放射学为重点的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)系统,通过脑出血扫描来识别中风,突出在这种医疗紧急情况下,时间的关键性。这个系统现在公开可用,名为“Explainable Intracranial Hemorrhage Detection for Radiologist Workflow Prioritization”,Werner 博士指出: “你应该记住,并不是所有的事情都需要用这些大语言模型来完成。人工智能只是做出预测,决策则要靠专业人士做出。” 这个系统的创建强调了 Werner 博士的重要观点“现在是成为构建者的最好时代。” **他将以 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 为代表的系列 AI 开发者工具推向了聚光灯下,并鼓励构建者们“保持好奇,持续学习”,“如果我能做到,你也可以”**。这些工具可以作为开发者学习技术的起点,并协助正确配置功能以符合最佳实践。 ![image.png](https://dev-media.amazoncloud.cn/bc86548b6761489b89b45b1835b83127_image.png "image.png") ##### **重磅发布 Amazon SageMaker Studio Code Editor** **是 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) Studio 中的一个完全托管的代码编辑器**,可以帮助您更轻松地编写、调试和部署[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)应用程序。 ![image.png](https://dev-media.amazoncloud.cn/5839ea4330c54e59b35f423ab1e07b9d_image.png "image.png") ##### **重磅发布 Amazon Q in Code Catalyst and in your IDE** **提供亚马逊云科技构建专家助手服务,集成接入 [Amazon CodeCatalyst](https://aws.amazon.com/cn/codecatalyst/?trk=cndc-detail) 和 IDE 中。**[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 可以基于文字和从系统层面了解问题和过程,开发者可通过问题、调整、迭代方式使用 Q 来精细化构建每一段开发管道。 ![image.png](https://dev-media.amazoncloud.cn/995bcb202013482fb2d988841492fee7_image.png "image.png") ##### **重磅发布 Amazon Application Composer in VS Code** **提供可视化应用构建的基础设施即代码(IaC)服务**,可在 Visual StudioCode 中直接组合使用,通过交互构建器可以从初始草图开始创建可部署的代码。 ![image.png](https://dev-media.amazoncloud.cn/0c6340adc87849219b178f171ca493bb_image.png "image.png") 最后,Werner 博士为参会者带来了一个特别的惊喜,而本场主题演讲也在现场开发者们的欢呼中落下帷幕。 ##### **重磅发布 Amazon Inspector CI/CD Container Scanning** **可支持 CI/CD 容器镜像安全扫描**。您可以使用集成开发工具直接从 CI/CD 管道中扫描容器镜像中的软件漏洞。 ![image.png](https://dev-media.amazoncloud.cn/df57bea496274969809d9cb4b87bba99_image.png "image.png") ![image.png](https://dev-media.amazoncloud.cn/0914ad668be741a99870a94c7eb3ea15_image.png "image.png") ![开发者尾巴.gif](https://dev-media.amazoncloud.cn/7141fe5d5ef94c5ebb6881ed502f2ef5_%E5%BC%80%E5%8F%91%E8%80%85%E5%B0%BE%E5%B7%B4.gif "开发者尾巴.gif")

2023亚马逊云科技 re:lnvent 进入第四天,Amazon.com 副总裁兼首席技术官 Werner Vogels 博士在主题演讲中,为我们带来了云架构俭约之道(The Frugal Architect)这一全新理念。Werner 从他过往20年经验中摄取灵感,为架构师和构建者们提供了有关架构设计、衡量、优化的范本教程。他表示:“作为技术人员,我们生活在一个变化如此之快的世界中,我们总是需要不断学习。请坐下来,拿出你的笔记本,从这一刻开始做笔记。” 

image.png

他指出,俭约之道的关键点不仅在于节省金钱成本,更重要的是节约资源。而现在,技术发展与 AI 模型更新带来的大量资源消耗已经是一个亟待关注的问题。他说:“成本是可持续性的近似代理,这是我关注的问题,也应该是你们关注的问题。” Werner 博士引用了一家荷兰文件传输服务公司 WeTransfer 的例子,他们通过使用亚马逊云科技,在2022年实现了从服务器使用中减少78%的碳排放。而这一改变源自接下来讲到的七大黄金法则——Werner 博士从他20年来的架构经验讲起。

image.png

企业架构的七大黄金法则

法则一:把成本视作非功能性的需求

核心要点:在设计架构的每一步都考虑成本因素

image.png

在设计系统时,像安全、合规性和可访问性这样的事项是非功能性、不可谈判的要求。它们不会直接影响特定的特性或功能,但对系统的运行是必要的。

Werner 博士在演讲中分享道:“组织也需要将成本和可持续性视为非功能性要求。如果成本不是设计过程的一部分,组织就有可能面临成本超过收入的风险。”

通过在早期阶段思考并持续考虑成本的影响,我们可以针对性地设计系统,以实现特性、上市时间和效率之间的平衡。如此一来,开发团队可以专注于维护精益高效的代码。运营团队则可以微调资源使用和支出,以最大化盈利能力。

法则二:可持续的系统是和业务充分共识成本的系统

核心要点:偿还你的架构债

image.png

技术团队不应独自进行系统设计,而应在架构设计过程中与业务团队紧密合作,进行成本考量,并确认所使用的收入模型以及盈利维度。遵循这一原则,就能够构建其遵循资金流的架构,并能够匹配相应的定价模型。

例如,在电子商务领域,一个关键维度可能是订单数量。随着订单数量的增加,基础设施和运营成本也会相应上升。然而,如果系统架构良好,就可以开始利用规模经济。重要的是,基础设施成本对业务的影响应该是可以衡量的。

作为构建者,我们需要考虑收入,并利用这些知识来指导我们的选择。因为不惜一切代价的增长会导致一系列的损失。

法则三:在持续的取舍与权衡中搭建架构

核心要点:确立你的优先级

image.png

在架构中,每个决策都伴随着一系列的权衡。成本、弹性和性能是经常相互矛盾的非功能性需求。

俗话说,“万事皆有不确定性” 。能够防御失败意味着需要投资于弹性,但同时性能可能会付出代价。关键是要在技术和业务需求之间找到正确的平衡点,找到与您的风险容忍度和预算相一致的最佳点。请记住,节俭是为了最大化价值,而不仅仅是最小化支出。为了做到这一点,您需要确定您愿意支付的费用。

重磅发布 Amazon Management Console myApplications

通过提供全面的仪表板来监控和管理应用程序的成本、健康状况、安全性和性能,增强了亚马逊云科技管理控制台的体验。

image.png

重磅发布 Amazon CloudWatch Application Signals

自动化工具和运营应用,旨在解决监控具有多个相互依赖服务的分布式系统的复杂性。它提供了一个预构建的仪表板,可用于追踪关键应用程序业务指标,如请求量、可用性和延迟。

image.png

法则四:未观测到系统将带来未知成本

核心要点:定义你的衡量单位

image.png

Werner 博士分享了一个阿姆斯特丹老房子的例子,将电表放在走廊上比藏在地下室的房子会使用更少的能源,其原因在于他们每天都可以看到能源消耗。

换句话说,如果您不观测系统,就无从知道它们的成本。而当您了解每个级别的成本时,虽然观察需要投资,但当关键成本指标放在工程师和他们的业务伙伴的核心位置时,更可持续的实践会自然而然地出现。持续的检查会让您发现过度支出的问题,并调整操作以削减开支。可观测性的投资回报通常远远超过成本。

最重要的是,将成本放在前面可以鼓励可持续的实践。

法则五:通过成本感知的架构,实施成本控制

核心要点:建立层级

image.png

俭约云架构的本质是强大的监控和优化成本的能力。设计良好的系统可以让您有进一步创建成本控制的机会。常见的方法是按关键性分层组件。第一层组件是必不可少的,无论成本如何,都要进行优化。第二层组件很重要,但可以在没有重大影响的情况下暂时缩小规模。第三层组件是是有效但非必要的,需易于控制且可以根据需要降低成本。

定义层次结构可以在成本和其他要求之间进行权衡。对组件进行细粒度控制可以优化成本和体验。基础设施、语言、数据库都应该是可调整的。以收入和利润为目标来设计和构建系统。成本优化必须是可衡量的,并与业务影响相关联。

法则六:成本优化是渐进的

核心要点:持续优化

image.png

追求成本效率是一个持续的旅程。即使在部署之后,我们也必须重新审视系统,以逐步改进优化,关键在于不断质疑和深入探究。编程语言提供了分析代码性能的分析工具,虽然这些工具需要设置和专业知识,但它们可以进行细粒度的分析,从而导致毫秒级的变化。看似微小的优化在规模上累积起来,可以节省大量的开支。

在运营中,可能存在大部分时间都花在运行现有系统上的情况。对资源使用情况进行分析,并识别浪费的机会较少。在亚马逊,我们不断监控生产中的服务,以了解模式并优化低效率。俭约需要坚持不懈——通过逐步减少服务延迟和基础设施成本,我们可以优化服务成本。

如果我们不断寻找,总会有改进的空间。我们今天节省下来的资金将为明天的创新提供资本。

法则七:走出惯性,远离盲目

核心要点:证伪你曾相信的事情

image.png

当软件团队在未遭遇重大失败或阻碍的情况下取得显著成功时,他们可能会滋生出自满情绪。这是一种潜在的危险倾向,因为它可能导致团队成员对那些已取得成功的策略、工具和实践过于自信。

当涉及到编程语言时,软件团队常常容易陷入这样的误区,即他们假设当前使用的技术、架构或编程语言永远是最佳选择,仅仅因为它们在过去的表现良好。然而,这种心态可能会产生一种虚假的安全感,阻碍他们质疑现有的方法和探索新的选项,我们必须始终寻找质疑、优化和改进的方法

正如 Grace Hopper 所说,英语中最危险的短语之一是:“我们一直都是这样做的。”这句话的危险性在于它阻碍了学习和改进。

新时代下的预测与见解

“技术可以成为一种力量,”在 Werner 博士分享的第二篇章,他分享了像 Thorn、国际水稻研究所和 CergenX 这样的组织的故事,这些组织正在使用 AI 方案来解决现实中遇到的实际问题。这些“传统”的机器学习和人工智能技术正在为农业、行政和医疗领域做出重大贡献。在新式 AI 层出不穷的时候,回归 “AI for Now” 和 “AI for Good” 的初心是这些场景中的核心关键点。

这些努力激发了 Werner 博士的灵感,他开始创建一个有益的以放射学为重点的机器学习系统,通过脑出血扫描来识别中风,突出在这种医疗紧急情况下,时间的关键性。这个系统现在公开可用,名为“Explainable Intracranial Hemorrhage Detection for Radiologist Workflow Prioritization”,Werner 博士指出: “你应该记住,并不是所有的事情都需要用这些大语言模型来完成。人工智能只是做出预测,决策则要靠专业人士做出。”

这个系统的创建强调了 Werner 博士的重要观点“现在是成为构建者的最好时代。” 他将以 Amazon Q 为代表的系列 AI 开发者工具推向了聚光灯下,并鼓励构建者们“保持好奇,持续学习”,“如果我能做到,你也可以”。这些工具可以作为开发者学习技术的起点,并协助正确配置功能以符合最佳实践。

image.png

重磅发布 Amazon SageMaker Studio Code Editor

Amazon SageMaker Studio 中的一个完全托管的代码编辑器,可以帮助您更轻松地编写、调试和部署机器学习应用程序。

image.png

重磅发布 Amazon Q in Code Catalyst and in your IDE

提供亚马逊云科技构建专家助手服务,集成接入 Amazon CodeCatalyst 和 IDE 中。Amazon Q 可以基于文字和从系统层面了解问题和过程,开发者可通过问题、调整、迭代方式使用 Q 来精细化构建每一段开发管道。

image.png

重磅发布 Amazon Application Composer in VS Code

提供可视化应用构建的基础设施即代码(IaC)服务,可在 Visual StudioCode 中直接组合使用,通过交互构建器可以从初始草图开始创建可部署的代码。

image.png

最后,Werner 博士为参会者带来了一个特别的惊喜,而本场主题演讲也在现场开发者们的欢呼中落下帷幕。

重磅发布 Amazon Inspector CI/CD Container Scanning

可支持 CI/CD 容器镜像安全扫描。您可以使用集成开发工具直接从 CI/CD 管道中扫描容器镜像中的软件漏洞。

image.png

image.png

开发者尾巴.gif

0
目录
关闭