写点什么

软件开发减排新方案:远程办公 + 绿色 CI

  • 2025-11-22
    北京
  • 本文字数:1553 字

    阅读完需:约 5 分钟

大小:753.93K时长:04:17
软件开发减排新方案:远程办公 + 绿色 CI

在 OOP Conference 上,Jochen Joswig 指出,可持续的 API 最受益于“极简主义”设计。软件部署需要综合考虑能耗、使用量、碳强度和硬件采购等因素。远程办公、延长设备寿命以及更环保的办公室实践方式,都能有效降低排放。优化 CI 流程、有选择地构建、更小的生成文件以及更精简的静态资源,也能进一步减少能源消耗。


DevGreenOps 是 DevOps 的延伸,将环境可持续性纳入整个 DevOps 生命周期。透明、极简、高效与意识,是构建可持续数字服务的核心原则。


关于如何确保 API 的生态可持续性,Joswig 认为思路相当丰富。API Thinking 团队在 Sustainable API Green Score 中总结了诸多最佳实践,大多归入透明、极简与高效三类。其中,极简主义带来的收益最为显著,例如“下线不再使用的 API”“以尽可能小的体量完成数据交换”“优化查询以减少返回信息量”或“只收集必要数据”。

这些做法不仅能减少带宽、硬件和能源的负担,也往往意味着代码结构更干净、维护起来更省心。


其中“将 API 部署在靠近用户端的位置”和“靠近数据中心”这两项建议最具争议,因为看似与“位置迁移”(location shifting)理念相矛盾。Joswig 解释说,位置迁移本身也存在争议,可能并不像表面看起来那样绿色环保:

  • 把资源放在“并不合适”的地点长期闲置,本身就是一种浪费。

  • 数据在各地之间来回移动,会不断推高网络负荷,网络被迫扩容,建设和运营阶段都会带来额外排放。


要以可持续的方式将软件部署到数据中心,需要综合多项因素,例如:- 软件运行本身所需的能耗,与传输数据所需能耗之间的对比;- 不同地区之间的碳排放强度差异大不大,以及对具体用例是否有实际影响;- 部署是否需要新增硬件设备。


评估用例的平均碳强度十分重要。Joswig 举例,如果软件只在白天运行,那就能直接受益于电网中的太阳能,整体碳强度会更低;夜间排放再高,也与它无关。


对任何软件企业来说,最可持续的举措之一是允许员工远程办公。Öko-Institut 的研究《居家办公——对环境和员工都有益处吗?》显示,在无需额外采购硬件的前提下,居家办公能显著减少二氧化碳排放。Joswig 补充说,如果员工必须通勤,那么提供良好的自行车基础设施、支持同事间拼车,也是非常有效的减排手段。


在设备层面,可持续性还包括笔记本电脑、手机、显示器、键盘、鼠标、路由器、服务器等。延长设备使用时间、确保其寿命尽可能长至关重要。如果必须更换,也应尽量让旧设备通过翻新或捐赠计划继续使用。


Joswig 还提到,在办公室里,其实还有不少提升环保实践的空间:选择绿色电力供应商;夜间与周末关闭灯光、显示器、咖啡机等设备;推进无纸化办公;节约用水。


在 DevGreenOps 的实践中,像 EcoCI 这样的工具可以测量或评估整条流水线(包括构建流程)的能耗。对于“极简”类实践,Joswig 建议在开发、测试与生产环境之间采用“构建一次、全域部署”的方法。使用 mono-repo 的团队只需针对实际变更的部分执行构建。例如:前端代码没变就无需构建前端,后端没变就不必构建后端,仅文档变更时更不需要触发任何构建。


还有不少工具可以帮助缩小生成文件体积,例如用于 Docker 容器的 SlimToolkit。大多数构建工具与框架(尤其是前端 Web 应用)已经支持生成文件优化。Tree shaking、压缩、静态资源缩减,应该成为生产环境构建的基本操作。


部分工具功能更强,例如 Parcel,支持差异化打包、移除开发分支代码以及图像优化。Joswig 特别指出,图像优化意义重大,因为图像往往占据网页负载的大部分体量:

使用 Parcel 这样的构建工具,它能自动将图片转换为 Web 优化格式,并按实际需要调整尺寸,从而大幅减少带宽占用、内存消耗和客户端计算负担。


不过,Joswig 也提醒,过度依赖这些功能,反而可能在构建流程本身造成不必要的额外负担。


原文链接:

https://www.infoq.com/news/2025/11/sustainable-software/

2025-11-22 08:001

评论

发布
暂无评论

Okaleido上线聚变Mining模式,OKA通证当下产出的唯一方式

鳄鱼视界

华为2023届提前批预热开始!左 神的程序代码面试指南终派上用场

程序猿阿宇

Java 算法 后端 Java工程师 算法刷题

兆骑科创高质量海归人才双创服务平台,线上直播路演

兆骑科创凤阁

哪个led显示屏厂家更好

Dylan

LED显示屏 led显示屏厂家

优必选大型仿人服务机器人Walker X的核心技术突破

优必选科技

机器人

用GaussDB(for Redis)存画像,推荐业务轻松降本60%

华为云开发者联盟

数据库 redis 存储 GaussDB ( for Redis ) 用户画像

不愧是阿里内部“千亿级并发系统架构设计笔记”面面俱到,太全了

冉然学Java

Java 高并发系统设计 技术栈 构架 高并发处理

BATM面试Java岗:精选200+面试题及答案、6大重点规划和经验总结

程序员啊叶

Java 编程 程序员 架构 java面试

测试驱动开发(TDD)在线练功房 | 9月17日开课

ShineScrum

敏捷 测试 TDD 代码 测试驱动开发

从业务需求出发,开启IDC高效运维之路

鲸品堂

IDC

产品动态丨Android 13 高效适配全新升级

MobTech袤博科技

android

华为被迫开源!从认知到落地SpringBoot企业级实战手册(完整版)

程序猿阿宇

Java 程序员、 秋招 构架 面试‘

1000个字带你一次性搞懂JavaAgent技术,反正我是彻底服了

程序员啊叶

Java 编程 程序员 java面试 构架

CircleIndicator组件,使指示器风格更加多样化

OpenHarmony开发者

OpenHarmony

墨天轮高分技术文档分享——数据库安全篇(共48个)

墨天轮

MySQL 数据库 oracle postgresql 数据库安全

怒冲GitHub榜首!京东T8幕后打造高并发面试手册,狂虐阿里面试官

程序猿阿宇

Java 高并发 阿里 构架 面试‘

终极套娃 2.0 | 云原生交付的封装

尔达Erda

云计算 程序员 微服务 云原生 开发

阿里Java架构师面试高频300题:集合+JVM+Redis+并发+算法+框架等

程序员啊叶

一次性把Docker的概念、容器与虚拟机的区别、容器交付的优势讲清

程序员啊叶

Java 编程 程序员 架构 java面试

今天去 OPPO 面试,被问麻了

程序员啊叶

Java 编程 程序员 架构 java面试

算法题每日一练---第9天:第几个幸运数字

知心宝贝

算法 前端 后端 7月月更

闭关吃透Java性能手册,成功拿到字节Offer!不愧是阿里内部资料

程序猿阿宇

Java 后端 阿里 Java工程师 构架

众人呼唤的 Java 单商户系统,究竟有什么过人之处?

CRMEB

HDD杭州站·HarmonyOS技术专家分享HUAWEI DevEco Studio特色功能

HarmonyOS开发者

HarmonyOS

十字链表的存储结构

乔乔

7月月更

Beyond Compare 4 实现class文件对比【最新】

白粥

工具 Beyond Compare 文件对比

如何构建面向海量数据、高实时要求的企业级OLAP数据引擎?

字节跳动数据平台

数据仓库 云原生 OLAP Clickhouse

城市燃气安全再拉警钟,如何防患于未“燃”?

AIRIOT

物联网 天然气管理平台 燃气安全

兆骑科创海内外高层次创新创业人才服务平台,双创成果转化平台

兆骑科创凤阁

手把手教你在 Vue3 中自定义指令

江南一点雨

阿里架构师花近三个月时间整理出来的Java独家面试题(Java岗)

程序员啊叶

Java 编程 程序员 架构 java面试

软件开发减排新方案:远程办公 + 绿色 CI_管理/文化_Ben Linders_InfoQ精选文章