はじめに
サーバーレス機能が開発環境に導入されたことで、多くの人々がデータを取り扱い、アプリケーションを構築する方法が大きく変わりました。サーバーレスアーキテクチャの利用を最大限に理解するためには、遭遇する可能性のある用語を理解することが重要です。
この用語集は、サーバーレスコミュニティで一般的に使用される用語をまとめ、サーバーレスに慣れ親しむのに役立つ定義とコンテキストを提供することを目的としています。
この用語集は生きたドキュメントであり、作成中のものです。時間の経過とともに既存のエントリを改良しながら、新しいトピックで更新していく予定です。カバーする予定の用語の初期出発点がありますが、取り上げてほしいことがあれば、GitHub issueを開いて提案を追加してください。
PRISMA.IOの関連情報
すべてのアプリケーションデータを一元管理するには、Prisma Data Platformをご覧ください。
Prismaは、データベースを扱うアプリ開発者の生産性と自信を高めることを目的とした、TypescriptとNode.js向けのオープンソースのデータベースツールキットです。
用語
- APIゲートウェイ
- アプリケーションプログラミングインターフェース(API)ゲートウェイは、API管理ツールであり、バックエンドサービスとの間に位置します。サーバーレスデプロイメントでは、APIゲートウェイは、リクエストを処理するために必要なバックエンドサービスへのルーティングを処理し、適切な結果を返すプロキシとして機能します。
- Backend as a Service(BaaS)
- BaaSは、開発者がアプリケーションのバックエンド、つまり舞台裏の側面をすべて外部委託できるクラウドサービスモデルです。これにより、開発者はフロントエンドの維持に主な焦点を当て、データベース管理、クラウドストレージ、ユーザー認証、その他のタスクをBaaSプロバイダーに委任できます。
- コールドスタート
- コンピューティングにおいて、コールドスタートとは、システムまたはその一部が作成または再起動されたときにレイテンシが発生し、実行前に遅延が発生する問題を指します。
- コネクションプーリング
- コネクションプーリングは、データベース接続をキャッシュし、データベースへの新しいリクエストが必要になった場合に将来再利用できるようにすることです。これらは、データベースでコマンドを実行するパフォーマンスを向上させるために使用されます。
- コンテナ
- コンピューティングにおいて、コンテナとは、アプリケーションのパフォーマンスを向上させるために、コードとそのすべての依存関係をパッケージ化するソフトウェアの単位を指します。コンテナコードは、システムおよび他のコンテナリソースとの衝突を回避する分離された名前空間で実行できます。
- エッジコンピューティング
- エッジコンピューティングは、応答時間を改善し、帯域幅を節約することを期待して、計算とデータストレージをデータソースの近くに配置する分散コンピューティングパラダイムです。
- イベントドリブンアーキテクチャ
- イベントドリブンアーキテクチャは、イベントを使用して分散サービス間でトリガーと通信を行い、マイクロサービスアプリケーションで一般的です。イベントは、更新や識別子の発生など、状態の変更である可能性があります。*イベントドリブンアーキテクチャ*の主なコンポーネントは、イベントプロデューサー、イベントルーター、およびイベントコンシューマーです。
- Functions as a Service(FaaS)
- FaaSは、マイクロサービスアプリケーションの構築に通常伴うインフラストラクチャを管理することなく、関数を実行できるクラウドコンピューティングサービスの一種です。FaaSを使用すると、開発者はイベントに応じてコードを実行させることができます。
- レイテンシ
- レイテンシとは、データパケットがデバイスを介してキャプチャ、送信、処理され、宛先で受信およびデコードされるまでにかかる時間です。
- Polyglotシステム/チーム/環境
- Polyglotシステム/チーム/環境とは、特定のサービスを担当するエンジニアリングチームが、使用したいスタックを決定できるようにするプラクティスです。これはマイクロサービスアーキテクチャでは一般的であり、開発者のモチベーションと生産性の向上につながる可能性があります。サーバーレスコンピューティングは、多くの言語をサポートし、アプリケーション機能を個別のActionに分解することで、Polyglot開発を可能にします。
- Prisma Accelerate
- The Prisma Accelerate は、アプリケーションとデータベースの間の中間層です。従来のデータベースをサーバーレス環境で確実に使用できるように、データベース接続プールを維持します。
- サーバーレスコンピューティング
- サーバーレスコンピューティング は、クラウドプロバイダーが現在の需要に応じてマシンリソースを割り当てるクラウドコンピューティング実行モデルです。クラウドプロバイダーは、顧客に代わってサーバーを管理します。
- サーバーレスデータベース
- サーバーレスデータベースとは、サーバーレスコンピューティングモデルの主要な原則を体現するデータベースのことです。
- 手動サーバー管理不要
- 自動的で柔軟な使用量スケーリング
- 組み込みの回復力とフォールトトレランス
- 高可用性と即時アクセス
- 消費量ベースの課金
それらの背後にある概念は、データストレージの責任をデータ処理タスクから分離することです。
- ステートフルデータベース接続
- ステートフルデータベース接続とは、アプリケーションまたはプロセスが以前のトランザクションのコンテキストで実行される接続です。現在のトランザクションは、以前のトランザクションからの出来事の影響を受ける可能性があります。
- ステートレスサーバーレス関数
- ステートレスプロセスまたは関数は、以前のリクエストから隔離されて発生します。以前のリクエストの保存された知識はないため、現在のリクエストは影響を受けず、最初から作成されたかのように機能します。
- ベンダーロックイン
- ベンダーロックインとは、ソフトウェアアプリケーションのアーキテクチャが、特定のクラウドプロバイダーまたはツール製品に従って設計されたコンポーネントで構成されている場合に発生するものです。その結果、別のクラウドプロバイダーに切り替えたり、異なるツールを採用したりするコストが発生します。
PRISMA.IOの関連情報
すべてのアプリケーションデータを一元管理するには、Prisma Data Platformをご覧ください。
Prismaは、データベースを扱うアプリ開発者の生産性と自信を高めることを目的とした、TypescriptとNode.js向けのオープンソースのデータベースツールキットです。