🌤️

Cloudflareについて調べてみた

2024/02/13に公開

挨拶

こんにちは、T4D4と申します。普段は大学生をしています。今回はアドベントカレンダーの季節なのでこれを機にアウトプットを始めようと思い記事のテーマとして以前から名前は知っていたけど名前しか知らないので気になっていたCloudflareについて調べてみました。

追記

ゆっくりと書いていたら2024年になってしまいました。/(^o^)\ナンテコッタイ

Cloudflareとは?

Cloudflareとはそもそもどんなサービスなのでしょうか?
Cloudflare公式サイトによると、

Cloudflareは「どこでもつながる世界」のためのクラウドです。
今は、すべてがすべてに、どこででも、常につながっていることが必要な時代です。このハイパーコネクティビティはセキュリティ、パフォーマンス、耐障害性、プライバシーの面で新たな問題が生じる要因にもなっています。

Cloudflareは、世界初のコネクティビティクラウドとして、世界中で数百万ものお客様をつなぎ、保護しています。個人から世界最大級の企業まで誰もが、ネットワーキング、セキュリティ、開発者向けサービスを統合した当社の統合プラットフォームを使って、世界各地で成功を収めています。

Cloudflareを選ぶ理由|Cloudflareより引用。

とのことです。
正直これだけではイマイチよくわからないので、Cloudflareの提供するサービスを見てみます。
Products · Cloudflare Docsを見ると、実に多くのProductsを提供している事がわかります。 全部を深堀りするのは大変なので、個人的に気になった以下3つのProductsに絞って調べてみます。

実際に調べてみた

1.Cloudflare Workers

まず1つ目は、Cloudflare Workers®です。
Cloudflare Workersは、サーバーレスアプリケーションを構築、デプロイする為のプラットフォームです。Cloudflare Workersには以下のような特徴があります。

Ⅰ.低レイテンシー

如何に通信速度が速くても、物理的に遠いサーバーと通信するのと近いサーバーと通信するのとでは必要な時間が変わるので世界中に分散されたCloudflareのサーバーにデプロイすることでユーザーにとってもっとも近い場所でアプリケーションを実行し、レイテンシーを低下させることができます。
このリンクから自分の環境での実際のレイテンシーを確認できます。

Ⅱ.ダイナミックなパワーを持つ静的アセット

Cloudflare Workersではアセットを事前に生成せず画像、SVG、PDFなど、必要なアセットをその場で生成し静的なアセットと同じように素早く配信できます。

Ⅲ.低価格

Cloudflare Workersは、毎日最初の10万リクエストは無料、有料プランも基本料金が$500で1000万リクエストまで、超過分は100万リクエスト毎に$0.30と、他のサーバーレスプラットフォームと比べても低い価格で利用できます。
詳細はこちら

2.Cloudflare Pages

次に2つ目は、Cloudflare Pagesです。
Cloudflare Pagesは、フロントエンド開発者が静的サイトやJAMstackアプリケーションをデプロイするためのプラットフォームです。
Cloudflare Pagesには以下のような特徴があります。

Ⅰ.Pages Function

Pages Functionを使用してサーバーサイドのコードをデプロイすることで、専用のサーバーを実行することなく認証やフォーム送信の処理、ミドルウェアとの連携などの動的な機能を実現できます。

Ⅱ.低価格

Cloudflare Pagesは無料アカウントでもサイト数、静的リクエスト、帯域幅に制限がなく、1月あたりのビルド回数やプロジェクトあたりのカスタムドメインの数ぐらいしか制限がないです。
詳細はこちら

3.Cloudflare R2

最後にCloudflare R2です。
Cloudflare R2は、Cloudflareが提供するストレージサービスです。
開発者は一般的なクラウドストレージサービスに関連するイグレス帯域幅料金を支払う事なく大量の非構造化データを保存できます。
Cloudflare R2には以下のような特徴があります。

Ⅰ.ロケーションヒント

ロケーションヒントは、バケツ作成時に指定できるオプションのパラメーターで、データがアクセスされる主な場所を示します。
バケツ作成時にデフォルトの設定では作成リクエストの発信者の位置情報に基づいてもっとも近い利用可能な地域にバケツが作成されます。
バケツ内のデータへのアクセスの大半が、バケツ作成リクエストの送信元とは異なる場所からになると予想される場合にロケーションヒントを有効化することで、データへのアクセス速度を向上させることができます。

Ⅱ.低価格

Cloudflare R2は、無料アカウントでは1月あたり10GBまでのストレージ、100万リクエストまでのclassAに分類されるオペレーション、1000万リクエストまでのclassBに分類されるオペレーションが無料で利用できます。無料アカウントでの利用範囲を超えた場合は、ストレージは1GBあたり$0.015、classAオペレーションは100万リクエスト毎に$4.50、classBオペレーションは100万リクエスト毎に$0.36がかかります。
詳細はこちら

まとめ

この記事ではCloudflareは非常に多くのProductsを提供しているので個人的に気になったProductsとしてCloudflare Workers、Cloudflare Pages、Cloudflare R2の3つに絞って調べてみました。どれもCloudflareの世界中に分散化されたエッジネットワーク上で動作するため、低レイテンシーで高速なアプリケーションを提供できるという特徴があります。そして、どれも低価格で利用できるため、個人開発や小規模なプロジェクトにはとても利用しやすそうです。

おわりに

今回は一部のProductsのみを調べただけなので後日他のProductsについても調べたり今回調べたProductsを実際に使ってみたりしてみたいです。

参考文献

Discussion