Cloudflare は、もともとは CDN(コンテンツ配信ネットワーク) やセキュリティを提供する会社です。 世界中(日本にも多数)に何百ものサーバー拠点(エッジ)を持っており、ユーザーに一番近い場所からデータを返すことで、Webサイトを爆速・安全にするサービスを提供しています。

近年、ただのCDNにとどまらず、「サーバーそのものを世界中に配置して動かす」 という画期的なプラットフォームに進化しました。IT部ではこの仕組みをフル活用します。

Cloudflareの環境の前に、私たちが何を使ってアプリを作るのかを紹介します。

この2つで作ったものを、Cloudflareのどこに置くのかを見ていきましょう。

私たちこれから書くプログラムを、どこに置いて動かすのか? Cloudflare では、主に以下の2つのサービスを使い分けます。

Cloudflare Pages (フロントエンド)

Cloudflare Workers (バックエンド)

💡 コラム:Pages と Workers の統合 現在の Cloudflare の動向として、「Pages の仕組みを Workers に統合していく」という大きな流れが進んでいます。将来的にはフロントもバックもすべて「Workers」という共通の基盤で管理されるようになりますが、研修では便宜上「静的な画面=Pages」「動的なAPI=Workers」と呼び分けて進めます。

アプリで扱う様々なデータ(ユーザー情報、投稿、画像など)を保存するため、Cloudflare は用途に合わせて複数のデータストアを提供しています。

D1 (リレーショナルデータベース)

KV (Key-Value ストア)

R2 (オブジェクトストレージ)

私たちが開発する Web アプリは、この 「Cloudflare エコシステム」 の上で成り立っています。

  1. ユーザーが Pages にアクセスし、React の画面を表示する。
  2. 画面から Workers (Hono) へデータ取得のお願い(リクエスト)を送る。
  3. Workers が D1 (DB) や R2 (画像) からデータを取得し、画面に返す。

次のステップへ

以上が、Cloudflare で使われるサービスの「概念」です。

詳しいコードの書き方や、具体的な設定方法(wrangler の使い方など)は、今後の 「フロントエンド」「バックエンド」それぞれのトラック で、実際に手を動かしながら学びます!

まずはこの「役割分担」と「サービスの名称」を、IT部内での会話で使えるようになりましょう。