Holly Cummins 在 Devoxx UK 上的演讲:打造更环保的 Java 应用程序
在 Devoxx UK 的演讲中,Red Hat 的高级软件首席工程师 Holly Cummins 分享了如何使 Java 应用程序更具成本效益和能源效率的方法。她展示了其团队在 Quarkus 上的工作成果,并提出在应用程序中明智选择 JVM 或原生选项可以节省高达两倍的成本和碳排放。
IT 行业的碳排放现状
Cummins 首先指出,IT 行业的碳排放量已超过航空业。仅运行数据中心所需的能源消耗就相当于韩国的总能源需求。若加上网络流量,这一数字甚至超过英国或巴西的能源消耗。
从“绝望路径”到“解决方案主义者”
Cummins 建议,与其选择“绝望路径”放弃行动,不如成为“解决方案主义者”,采取行动减少排放。这不仅是一件正确的事情,还能为企业带来成本降低和环境、社会及治理(ESG)评分的提升。
绿色软件基金会的三大原则
Cummins 强调,绿色软件基金会的原则是减少碳排放的起点,该原则基于三大支柱:
- 碳意识:关注电力的来源和时间;
- 硬件效率:基础设施的弹性与利用率成正比;
- 电力效率:使用的技术栈和算法的效率。
碳意识:电力来源和时间
电力的来源是关键,煤是最脏的能源,燃烧煤会产生大量二氧化碳。不同地区使用不同的发电方式,选择透明公开数据中心位置的云服务提供商有助于决策。此外,可再生能源具有间歇性,因此可以安排重型批处理任务在绿色能源可用时运行,这通常也更经济。
硬件效率:基础设施的弹性
Cummins 引用了 2017 年和 2014 年的调查数据,指出许多服务器并未有效工作。她提出了“LightSwitchOps”的概念,即在应用程序不运行时关闭基础设施。这需要应用程序具备快速启动、弹性和幂等性。
电力效率:技术栈和算法效率
Cummins 引用了一篇学术论文,指出 Java 在能源消耗方面表现尚可,排名第五,优于 Go。她强调“测量而非猜测”的重要性,并展示了 Red Hat 团队在 Quarkus 上的工作,以减少框架的能源消耗。
Quarkus 的环保优势
Cummins 展示了 Quarkus 在减少碳排放方面的测试结果:
- 密度视角:与经典 JVM 相比,Quarkus 可减少约 2 倍的碳排放,原生版本的碳足迹更小。
- 容量视角:与经典 JVM 相比,Quarkus 可减少约 2 到 3 倍的碳排放,但原生版本的碳排放甚至高于 JVM。
JVM 与原生 Java 的适用场景
Cummins 回顾了 JVM 和原生 Java 的适用场景:
- JVM:适用于高负载、长期运行进程或稳定工作负载的场景。
- 原生 Java:适用于低负载、资源受限/老旧硬件、高重新部署或无服务器场景。
减少碳足迹的具体行动
Cummins 总结了几项具体行动:
- 利用购买力推动企业选择更环保的托管解决方案和消费者软件;
- 确保关闭未使用的基础设施;
- 选择能源效率更高的语言和框架。
这些行动不仅有助于减少对地球的影响,还能提高支出效率。例如,2021 年“僵尸服务器”浪费了 266 亿美元。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。