速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

每个月在云上“狂烧”180 万,Ruby On Rails 之父:我们要直接买硬件!

  • 2023-01-18
    北京
  • 本文字数:3904 字

    阅读完需:约 13 分钟

每个月在云上“狂烧”180万,Ruby On Rails 之父:我们要直接买硬件!

2022 年 10 月,运营项目管理平台 Basecamp 背后的 37Signals 公司首席技术官兼 Ruby On Rails 之父 David Heinemeier Hansson 发文表示将要“下云”。近日,37Signals 官博发文总结了自己在 2022 年的云支出情况。

 

这是一个得令人瞩目的云账单,该公司 2022 年在云上的支出费用大约为 320.15 万美元(约合人民币 2170 万元),即每月 26.67 万美元(约合 180 万元人民币)。其中大部分支出(75.99 万美元)花在了 Amazon Web Services 的 EC2 和 EKS 服务。

“恐怖“的云账单

 

现在的 37Signals 主要经营两款产品:Basecamp 和 HEY,这也是他们的核心产品,对应的客户规模和收入水平也是最高的。另外,他们还运行着不少遗留服务,包括 Basecamp Classic、Basecamp 2、Highrise、Backpack、Campfire、Writeboard,甚至是 Ta-da List。这些服务已经不再继续出售,但仍有几万甚至几十万用户在用,利润贡献在数百万美元上下。对此,37Signals 表示“打算永久提供支持,直到互联网不复存在。”

 

上述的不少应用程序并非运行在云端。以规模最大的应用程序 Basecamp 为例,它的最新版本和之前的 Basecamp 2 几乎都运行在 37Signals 的自有服务器上,对应应用本体、数据库和缓存服务器。在这些服务上,只有搜索(OpenSearch)、文件存储(S3)和 CDN 服务(CloudFront)由云端提供。

 

HEY 则基本完全依赖于云服务(除了某些电子邮件和图像处理服务,这部分由其自有硬件支持)。在 HEY 当中,37Signals 通过 AWS EKS 在 Kubernetes 集群上运行完整的 Rails 应用程序,借助 Aurora RDS 建立 MySQL 数据库服务器,在 Elasticache 上运行 Redis,还通过 OpenSearch 实现搜索服务。另外,37Signals 的其他遗留应用程序也都运行在 EKS 上,数据库用的则是 RDS。

 

“2022 年全年,我们的所有云服务总开销为 3,201,564 美元,每月是 266,797 美元。吓不吓人!”37Signals SRE 工程师 Fernando Álvarez 在博文里说道。

 

下面,我们看下 37Signals 的详细开销:

 

  • 单看 HEY,纯用于生产工作负载的全年开销为 106.6 万美元(合每月 8.88 万美元)。这一项服务的成本来源可参考下图:



  • 至于其他各独立服务,37Signals 2022 全年为所有应用程序数据库在 RDS 上花费了约 47.3 万美元(合每月 3.9 万美元)。这还不包括最新的 Basecamp 和较早的 Basecamp 2 版本,它们用的自有硬件。所以其中大部分还是来自 HEY,全年数据库支出为 35.59 万美元(合每月 2.96 万美元),其余部分就是支持其他遗留服务的开销了。

 

  • 至于 OpenSearch,37Signals 主要用来托管应用程序搜索集群和日志记录管道中的索引存储,全年共花掉 51.99 万美元(合每月 4.33 万美元)。Basecamp 和 Basecamp 2 也在使用这项云服务,所以其中大部分成本就来自这两者,外加 HEY 和 Basecamp Classic。

 

  • 亚马逊云科技的 Kubernetes 服务 EC2 和 EKS,在 2022 年内共花掉 75.99 万美元(合每月 6.33 美元)。其中大部分用作 HEY 的生产和登台环境,总计 27.23 万美元(合每月 2.26 万美元),其余的用于其他遗留应用程序。但同样地,Basecamp 和 Basecamp 2 不在其中。

 

  • 37Signals 在 Elasticache 身上花掉了 12.38 万美元(合每月 1.03 万美元)。其中最大占比再次来自 HEY,它要借助这项服务来获取 Redis 支持的缓存。

 

  • 最后,37Signals 在 S3 上存储了约 8 PB 的文件,2022 年内总开销高达 90.78 万美元(合每月 7.56 万美元)。Hansson 透露,这是单笔花费最贵的项目。值得注意的是,37Signals 使用了双区域副本策略来避免 AWS 整个区域及其中各可用区的突发故障。为了交付这些文件和其他静态资产,其 2022 年在 CloudFront CDN 服务身上花掉了 66742 美元(合每月 5562 美元)。

 

实际上,37Signals 为了将巨额支出削减至 320 万美元,做出大量努力。运营团队开展一项审慎的成本核查计划,每月上报并跟踪。公司还通过预留实例和长期使用承诺等方式签订了长期协议,借此享受更低的定价优惠。“但即便如此,我们在 2022 年内还是花掉了如此恐怖的云服务支出!”

 

新的”省钱计划”:购买硬件

 

在新的一年,37Signals 表示,计划把大量服务和依赖项从云端转移到内部硬件上,借此大幅削减这笔费用。但这个公司并不打算亲自运营数据中心,而是与 Deft 合作租赁其机架空间、带宽、供电和托管服务。

 

“虽然按我们的业务规模计算,这样的支出同样不低,但已经远优于公有云上的花费。”Álvarez 说道。

 

虽然还没有详细的账单出来,但 Hansson 在推特上将这一成本与购买戴尔包含 288 个 vCPU 的服务器所需的支出进行了对比:

 

第一组,R6525 有 256GB 内存、3TB NVM、2x10G 网络、2 倍 AMD EPYC 7513。第二组除了是 2x AMD EPYC 7443 之外,其他都相同。所以 288 vCPU、15 TB NVM、1.3TB RAM,3 年每个月只要 1287 美元!

 


37signals 表示,新方案并不会给带来太多额外的运营负担,他们不需要在数据中心架设和部署硬件或者线缆。所有设备都可以从戴尔那边直接订购,发往 Deft 数据中心,等到服务器显示在线后即可直接使用。

 

可以看出,37signals 在“下云”上表现出了非常大的决心。

 

正如 Hansson 当时所说,云计算在两种极端情况下大有裨益:其一是应用程序极其简单且流量很低的情况,这时选择完全托管服务能摆脱大部分复杂性要素;其二是负载波动几乎毫无规律可言、大家不知道该部署多少服务器的情况,这时上云是最好的选择。但如今 37signals 已经不适用于上述两种情况。“Basecamp 多年的商业模式跟自有硬件都能良好协同,业务的增长轨迹也有很好的可预测性。”

 

事实上,虽然近年来云计算加速增长,但企业并没有放弃本地数据中心,很多企业继续依赖传统数据中心来处理其关键任务工作负载。

 

根据Uptime Institute 2022 年的研究,只有 36% 的组织会将关键任务工作负载放入公共云中。虽然这一比例高于 2019 年的 26%,但企业越来越担心公共云服务的可见性和弹性。2022 年,超过四分之一 (26%) 的公司表示,出于此类担忧,他们不会将关键任务工作负载放到公有云上,这一比例高于 2019 年的 22%。

 

企业在延长硬件的使用周期

 

那么,企业总是想要最新、最好的技术来为其数据中心提供动力吗? 实际上并不是。

 

根据 Uptime Institute 的研究,硬件更新周期在普遍延长而非缩短。在其 2020 年数据中心调查中,最常见的更新间隔时间为五年,而 2015 年时为三年。这表明在相对较短的时间内就发生了重大转变。根据Uptime的说法,五年或更长时间的硬件生命周期正在成为常态。

 


是什么推动了这种延长效应?Uptime Institute 表示,数据中心硬件的电源使用效率 (PUE) 的下降削弱了更频繁更新服务器的主要动力。平均 PUE 从 2007 年的 2.5 暴跌至 2014 年的 1.67,但此后改善停滞不前,当前平均 PUA 为 1.55。

 

注:PUE = 数据中心总能耗/IT 设备能耗,其中数据中心总能耗包括 IT 设备能耗和制冷、配电等系统的能耗,其值大于 1,越接近 1 表明非 IT 设备耗能越少,即能效水平越好。

 

随着效率提高的放缓,企业对昂贵的硬件进行更换的经济动机也在放缓。摩尔定律带来的回报越来越少。

 

 

“正是这种每瓦特性能的翻倍,为增加计算能力同时通过硬件更新提高效率提供了重要机会。但在过去五年中,英特尔(以及直接竞争对手 AMD)要保持改进的步伐变得更加困难。这就提出了一个问题:我们是否还能从最近几代和即将到来的几代中央处理器中看到这些改进?否则,硬件更新的理由将被削弱。”

 

Uptime Institute 2020 数据中心报告


PUE 是更新周期延长的因素之一,还有一些其他的因素:

 

  • 硬件即服务:供应商越来越喜欢将他们的硬件产品捆绑在订阅模式中。某种程度上,他们正在响应客户的需求。但当技术格局变化如此之快时,谁愿意锁定所有的资本支出呢?

  • 提高硬件利用率:超大规模(hyperscalers)已经证明商品硬件足以运行工业级工作负载。关键在于应用正确的软件层来充分利用可用硬件。中型和企业 CIO 密切关注着这些发展。

  • 预算限制:新 IT 设备的商业用途总是受到审查,毫无疑问,疫情的发生将优先事项进行了重新排列。随着远程工作成为常态,各种规模的企业都重新审视了对专有硬件的需求。针对云优先工作负载的服务和咨询支出也越来越多。

 

当然,硬件供应商仍然希望缩短硬件升级周期。以戴尔为例,该公司在 2019 年委托Forrester 发布的一份报告中警告说,不及时升级设备会带来机会成本。“老化的基础设施和进展有限的 SDDC(软件定义的数据中心)使用,阻碍了 IT 组织满足业务需求。”

 

但硬件使用者正在主动延长使用周期。比如微软目前在其庞大的数据中心产品组合中运营着 400 万台服务器(并且还在增加)。微软首席财务官 Amy Hood 最近宣布该公司将其服务器的使用寿命延长至六年,而在此之前的更新周期为四年。

 

Hood 表示,通过对软件的投资、服务器和网络设备运营效率的提高以及技术进步,微软能够将其服务器的使用寿命再延长两年。因此,该公司估计 2023 财年第一季度可节省 11 亿美元,整个财政年度总计可节省 37 亿美元。

 

另外,为实现其循环经济实践的承诺,从现在到 2030 年,微软的目标是将其数据中心的电子垃圾通过维修管理、回收再利用等方式降低 90%。这种维修和再利用的趋势不仅会进一步延长硬件更新的时间范围,还将支持二手数据中心设备市场的扩张。

 

结束语

 

在企业不断追求“降本增效”,而云成本不断上升的情况下,“下云”采用传统硬件设备成为一些企业的选择。但真要下云的话,企业需要考虑是否像 37Signals 一样业务可预测、没有意外的流量涌入,同时也要算好自己的账,比如要更换的设备价值多少,如何收回部分投资以抵消升级的前期成本,哪些设备可以在内部重新部署、哪些可以退役等。

 

世界上没有完美的解决方案,企业还是要做好评估后,根据自身业务需要进行选择。

 

参考链接:

https://dev.37signals.com/our-cloud-spend-in-2022/

https://horizontechnology.com/news/data-center-hardware-refresh-cycles/

2023-01-18 14:1612147

评论 2 条评论

发布
用户头像
下云已经在很多企业形成了一种趋势,因为云厂商在服务绑定后变得极其无良,宰熟时有发生!
2023-01-31 10:55 · 北京
回复
处处都被“杀熟”......
2023-01-31 17:17 · 北京
回复
没有更多了
发现更多内容

「Spring」@ConfigurationProperties——从基础到源码

Geek_rze78a

Java spring 源码

在线Excel转TSV工具

入门小站

工具

[Day25]-[二叉树]二叉搜索树中的插入操作

方勇(gopher)

LeetCode 二叉树 数据结构算法

知识管理:新时代企业竞争力核心

小炮

企业知识管理 企业知识管理工具

聊聊项目外包

石云升

创业 项目管理 职场经验 4月月更 项目外包

Android C++系列:string最佳实践

轻口味

c++ android 4月月更

超干货 | 手把手教你快速构建一个企业自有“微信”!

融云 RongCloud

揭秘华为云GaussDB(for Influx):最佳实践之数据建模

华为云开发者联盟

MySQL 数据建模 数据模型 华为云 GaussDB(for Influx)

为安全而生!浪潮云参编的《数据安全法》实施参考(第一版)重磅发布

云安全

Swoole中的协程使用相关说明,快来围观

CRMEB

Go单体服务开发最佳实践

万俊峰Kevin

微服务 单体架构 web开发 go-zero Go 语言

源码解析Synchronous Queue 这种特立独行的队列

华为云开发者联盟

MQ 堆栈 队列 Synchronous Queue 公平队列

双许可、先决条件、附加条款……开源许可证的疑难杂问

一君

JWTToken在线编码生成

入门小站

工具

云原生应用配置中心简述

穿过生命散发芬芳

4月月更

Go语言入门很简单:Go 中的作用域和变量隐藏

宇宙之一粟

作用域 Go 语言 4月月更

英特尔分享进军独显市场的背后思考

科技新消息

性能测试中QPS取样器和RT取样器

FunTester

攻克编译器技术(1)

刘旭东

编译器 4月月更

Docker下,极速体验编译pinpoint1.6.x分支

程序员欣宸

Java 分布式 4月月更

【易安联】安全都是有边界的,零信任也不例外

Geek_2d6073

Windows 11 修改 PIN 的长度为 4 位

HoneyMoose

DevSecOps“内置安全保护”,让软件研发“天生健康”

华为云开发者联盟

DevOps DevSecOps 软件研发 安全架构设计 安全隐私

“一个扫描枪一张表”,韵达选择 TDengine 应对每日亿级数据量

TDengine

数据库 tdengine

PingCode 完成近亿元人民币C轮融资,打造世界级研发管理与协作平台

爱吃小舅的鱼

Docker知识对应验证

Docker 4月月更

C语言总结_数组与函数传参练习题

DS小龙哥

4月月更

眼见不一定为实:调用链HBase倾斜修复

捉虫大师

HBase 数据倾斜 4月月更

linux之service命令

入门小站

REDIS集群安装运维调优及常见问题处理

IT巅峰技术

大数据培训学习程序员有必要吗

@零度

大数据开发

每个月在云上“狂烧”180万,Ruby On Rails 之父:我们要直接买硬件!_语言 & 开发_褚杏娟_InfoQ精选文章