本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
可持续发展支柱
Well-Architect AWS ed Framework 的可持续发展支柱侧重于最大限度地减少运行云工作负载对环境的影响。关键主题包括可持续发展责任共担模式、了解影响以及最大限度地利用以最大限度地减少所需资源并减少对下游的影响。
可持续发展支柱包含以下关键重点领域:
-
你的影响力
-
可持续发展目标
-
最大限度地提高使用率
-
预测并采用新的、更高效的硬件和软件产品
-
托管服务的使用
-
减少对下游的影响
本指南重点介绍您的影响力。有关其他可持续发展设计原则的更多信息,请参阅 AWS Well-Architected Framework。
您的选择和要求会对环境产生影响。如果您可以选择 AWS 区域 碳强度较低的产品,并且如果您的要求反映了实际的工作负载需求,而不仅仅是最大限度地提高正常运行时间和耐用性,那么工作负载的可持续性就会提高。下一节将讨论最佳实践和深思熟虑的注意事项,如果在工作负载设计和持续运营中采用,这些措施将对环境产生积极影响。
AWS 区域选择
AWS 区域 有些位于亚马逊可再生能源项目附近,或者位于电网公布的碳强度低于其他项目的地方。考虑可能适合您的工作负载的区域的可持续性影响
基于用户行为模式的消费
根据用户的流量和行为调整消费规模,有助于 AWS 最大限度地减少服务对环境的影响。设计解决方案时,请考虑以下最佳实践:
-
监控
CPUUtilization
MainRequestQueuePendingRequests
、和之类的 Amazon CloudWatch 指标,TotalRequestsPerSec
以确定您的需求何时为最高和最低,并确保在这段时间内您的集群资源大小合适。 -
在不使用非生产环境的几个小时内,自动停止这些环境。有关更多信息,请参阅博客文章使用资源标签自动停止和启动 Amazon Neptune 环境资源
。 -
如果您的流量模式变化频繁且不可预测,请考虑使用可随需求向上和向下扩展的 Neptune Serverless 实例,而不是使用为峰值流量预置的实例。
-
除了业务连续性目标外,还可以考虑使您的服务级别协议与可持续性目标保持一致。放宽多区域灾难恢复、高可用性或长期备份保留等要求,尤其是对于非生产环境或非任务关键型工作负载,可以减少实现这些目标所需的资源量。
优化软件开发和架构模式
为防止浪费,请优化模型和查询,共享计算资源,以便使用 Neptune 实例和集群中的所有可用资源。具体的最佳做法包括:
-
让开发者共享 Neptune 实例和 Jupyter Notebook 应用程序实例,而不是各自创建自己的实例。通过使用多租户分区策略,在单个 Neptune 集群中为每位开发者提供自己的逻辑分区
,并在单个 Jupyter 实例上为每位开发者创建单独的笔记本文件夹。 -
实现最大限度地利用资源并最大限度地减少空闲时间的模式,例如用于加载数据的并行线程以及将记录一起批处理到更大的事务中。
-
优化您的查询和图形模型,以最大限度地减少计算结果所需的资源。
-
对于 Gremlin 查询结果,请使用结果缓存功能最大限度地减少重新计算分页或经常重复的查询所花费的资源。
-
让你的 Neptune 环境保持最新状态。最新版本的 Neptune 支持效率更高的最新 EC2 实例,例如 Graviton。他们还改进了查询优化并修复了错误,从而减少了计算查询所需的资源量。