サーバーレスコンピューティング
Cloudflare Workersは、サーバーレスアプリケーションを構築したり、既存のアプリケーションを拡張したりすることを可能にするもので、コードは瞬時に世界中にデプロイされます。Workers技術の重要性を理解するために、まずその開発環境を理解します。
Workersはサーバーレスコンピューティングプロバイダーです。サーバーレスコンピューティング ↗とは、Cloudflareのようなプロバイダーがユーザーの代わりにサーバーを管理し、開発者や企業がアプリケーションロジックの記述とデプロイに完全に集中できるようにするクラウドコンピューティングモデルを指します。
クラウドコンピューティング ↗は、第三者のサーバー上でコンピューティングリソース(仮想マシン、ストレージ、データベース、ネットワーキングサービスなど)をホスティングすることとして定義されます。クラウドコンピューティングサービスプロバイダーには、Amazon Web Services、Microsoft Azure、Google Cloud Platform、Cloudflareが含まれます。
サーバーレスコンピューティングはクラウドコンピューティングの一部です。サーバーレスコンピューティングは、使用に応じてバックエンドサービスを提供する方法です。サーバーレスプロバイダーは、ユーザーが基盤となるインフラストラクチャを気にせずにコードを記述しデプロイできるようにします。サーバーレスコンピューティングには、他のクラウドコンピューティングモデルとは異なる独自の特性があります。
クラウドコンピューティングでは、組織は固定数のサーバーまたはサーバースペースをレンタルすることができます。アプリケーションへのリクエストトラフィックの季節的または予期しない急増に備えるために、組織はサーバースペースを過剰に購入することがあります。これにより、エンドユーザーや顧客からの高いリクエストボリュームによってアプリケーションがダウンしないようにします。
サーバーレスコンピューティングモデルでは、組織や個人は必要なサーバースペースやマシンの量を計算する必要がありません。サーバーレスコンピューティングプロバイダーがサーバー管理とプロビジョニングを行い、開発者や組織はロジックの記述とデプロイに集中できます。
サーバーレスコンピューティングプロバイダーは、リクエストトラフィックの急増や低下に自動的にスケールします。サーバーレスコンピューティングプロバイダーは、アプリケーションのスケーラビリティに責任を持ち、アプリケーションが受け取るリクエストのボリュームにリソースを合わせるように働きかけ、アプリケーションがオンラインの状態を維持します。
サーバーレスコンピューティングプロバイダーは、アプリケーションのコードがどのように実行されるかに対するアプローチが異なります。Cloudflareのような多くのサーバーレスコンピューティングプロバイダーは、イベント駆動型モデルを使用しています。イベント(HTTPリクエストやCron Triggerなど)がWorkerを呼び出すと、Workerのコードが実行されます。Workerの呼び出しの開始から終了までの総時間はdurationとして知られています。特定のリクエスト中にCPUが実際に作業を行う時間はCPU timeとして知られています。
サーバーレスコンピューティングを使用する開発者や組織は、使用モデルのパラダイムに基づいて請求されます。固定のコンピューティングリソースに対して支払うのではなく、サーバーレスモデルでは使用した分だけ支払います。使用はサーバーレスコンピューティングプロバイダーごとに異なって定義されます。Workersにおける使用はCPU時間として定義されています。
このページを読むことで、あなたは以下のことを学びました:
- Cloudflare Workersの背後にあるサーバーレスコンピューティングの概念を紹介されました。
- 従来のオンプレミスとクラウドコンピューティングインフラストラクチャの違いを確認しました。
- クラウドコンピューティングとサーバーレスコンピューティングのパラダイムの主要な違いを分析しました。
次のセクションでは、Cloudflare Developer Platformの一部であるサーバーレスコンピューティングプラットフォームであるWorkersが、他のサーバーレスコンピューティングプロバイダーと比べてそのアーキテクチャにおいてどのようにユニークであるかを学びます。