クラウドコストの真実
- クラウドサービスは安価だという認識があるが、実際にはユーザーが過大なコストを支払っている可能性がある。
- AWSはAmazonの利益の大半を生み出しているが、これはクラウドサービスが実際には高価であることを意味しているのかもしれない。
第一原理からの計算
- 上位1000サイトの1つを作りたいなら、たとえば businessinsider.com のように月間2億人の訪問者と4億ページビューが必要になる。
- HTMLドキュメントだけでも月間30TBの帯域幅が必要だが、これは毎秒11MBにすぎず、現代のハードウェアでは非常に低い基準だ。
レイテンシへの理解
- 光の速度で考えると、地球の反対側まで往復するには約200msが必要だが、実際には約300msかかる。
- CDNを使ってJS、CSS、メディアを配信すれば、サーバー処理時間を300ms短縮し、ユーザーのそばにサーバーを置くのと同じような効果を得られる。
エッジ技術の限界
- エッジ技術は、第2世代サーバーレス技術の発展にもかかわらず、データベースの問題を解決できていない。
- ほとんどの複雑なページではデータベースクエリが必要であり、これがレイテンシを増加させる可能性がある。
コストに関する考慮
- Hetzner.com は、AWS EC2と比べてはるかに安価なサーバーと帯域幅のコストを提供している。
- クラウドベンダーは初期段階では多くのものを無料で提供するが、スケール時にはコストが大きく増加する。
現実的な状況
- 特定のユースケースでない限り、ほとんどのWebサイトやSaaSは単一サーバーで動かすことができ、そのほうが安価で保守も簡単だ。
- SQLiteをローカルで使い、CDNを通じてCSS、JS、画像をキャッシュし、サーバーレンダリングによって性能を向上させられる。
- 複雑なDockerや仮想化がなくても十分にスケール可能であり、管理もしやすく、コストも安い。
GN⁺の意見
- この記事は、クラウドサービスの費用対効果に関する一般的な信念に疑問を投げかけ、ユーザーが実際に必要な以上のコストを支払っている可能性を指摘している。
- クラウドサービスのコスト構造と比較して、従来型の単一サーバーホスティングが依然として有効な代替案になり得ることを示している。
- サーバーレス、Docker、水平スケーラビリティといった技術があらゆる状況で必要なわけではなく、ときにはより単純なアプローチのほうが優れた性能とコスト削減をもたらし得ることを強調している。
- データベース最適化と地域的な配置の重要性を強調しており、これはクラウドサービスが提供するものと同等またはそれ以上の性能を実現できることを示唆している。
- 技術選定で考慮すべき点として、実際のトラフィックと性能要件を評価し、費用対効果を踏まえてクラウドの代わりに従来型サーバーホスティングを検討できる。
1件のコメント
Hacker Newsの意見
ホスティング事業の経験
トラフィック分析の誤り
サーバーエラーとトラフィック
サービス拡張へのアプローチ
AWSの利点
クラウドアーキテクチャに関する議論
SQLiteと垂直スケーリング
APIとSQLiteデータベースの組み合わせ
単一サーバーの可用性問題
クラウドへの移行と可用性