テクノロジー クラウドコンピューティング 非公開: サーバーレス アプリを作成するための 12 のフレームワーク

サーバーレス アプリを作成するための 12 のフレームワーク

サーバーレステクノロジーに興奮していますか?新しいプロジェクトに取り組みたいと思っていますが、どこから始めればよいかわかりませんか?

ここでは、実際に入手できる最も人気のあるサーバーレス フレームワークをまとめて紹介します。

サーバーレス コンピューティングは、より多くの作成に時間を費やしながら管理を減らすというアイデアを好む人々の間で大流行しています。そして、この技術はまだ非常に新しいものですが、多くの開発者やエンジニアは、サーバーレス運用の将来に向けたエキサイティングなソリューションの構築に全力を尽くしています。

すでにご存知かと思いますが、サーバーレスとは​​、正確には サーバーがないことを 意味するわけではありません。それは単に サーバーが減り 機能が増えること を意味します。次のプロジェクト用に信頼性の高い FaaS (Functions as a Service) プラットフォームをお探しの場合は、最高のサーバーレス コンピューティング プラットフォームに関する以前の記事をご覧ください。

そうは言っても、利用できるフレームワークを見てみましょう。最後に、サーバーレス分野で開発されているいくつかのエキサイティングなプロジェクトを紹介しますので、ぜひ最後までご覧ください。

AWS アンプリファイ

AWS Amplify フレームワークを使用して、ウェブおよびモバイル向けのスケーラブルなサーバーレス アプリを迅速に構築し、無限の柔軟性を実現します。スマート ワークフローを使用して、データ、ストレージ、認証などを使用してサーバーレス バックエンドを構成します。

少ないコード行でモバイルアプリやウェブアプリを既存または新規の AWS リソースに接続します。数回クリックするだけで、シングルページ Web アプリ、サーバー側でレンダリングされたアプリ、ステータス Web サイトをホストして展開できます。また、コンテンツとアプリのユーザーを簡単に管理することもできます。

AWS Amplify は、フロントエンドのモバイル開発者やウェブ開発者が AWS 上でフルスタックのアプリケーションをより迅速に作成し、必要なときにいつでもアプリケーションをカスタマイズできるように支援します。 Amplify は、React、Angular、JavaScript、Vue.js、Next.js などの多くの Web フレームワークと、iOS、Ionic、Flutter、Android、React Native などのモバイル プラットフォームをサポートしています。

Amplify の多くの UI コンポーネントと統合して、アプリ開発を加速できます。開発用に、認証、インタラクション、関数、データストア、ユーザー管理、API (REST、GraphQL)、分析、AI/ML 予測、ストレージ、PubSub、プッシュ通知などの多くの機能とツールを入手します。さらに、マネージド ホスティング、PR プレビュー、CI/CD、カスタム ドメイン、展開の監視も利用できます。

ミッドウェイ

従来のサーバー側アプリケーション、小規模プログラム、マイクロサービスを作成し、 Midway を使用してサーバーレス サービスを構築するための Node.js サーバーレス フレームワークを入手してください。これは、IoC インジェクション メカニズムを使用してアプリのロジックを分離し、大規模な Node.js アプリの開発をより自然に簡単にする TypeScript で書かれています。

Midway は、基本フレームワークとして Express、EggJS、または koa を使用できます。 GRPC、Dubbo.js、RabbitMQ、Socket.io などの基本的なソリューションを独立して使用できるように提供します。さらに、Midway は、フルスタックまたはフロントエンド開発者向けの Node.js サーバーレス Web フレームワークとしても機能します。

Midway を使用すると、コンテナ、VM、Alibaba Cloud、AWS、Tencent Cloud 上で実行される次世代アプリを構築できます。 Vue や React と簡単に統合することもできます。次のような多くの機能があります。

  • グループ化およびスケーラブルなプラグイン
  • アドバンストグループ ミドルウェアの互換性とアーキテクチャ
  • デカップリング機能とアプリケーションの階層化
  • 次世代開発の経験
  • koa ミドルウェアと Egg プラグインをサポートします。

ウェビニー

Webiny サーバーレス アプリケーション フレームワークを使用して、サーバーレス アプリケーションを設計、展開、構築するために必要なものをすべて入手します。さまざまなユースケース向けに設計されています。アーキテクチャや技術スタックを変更し、組織やプロジェクトのニーズに適応させることができます。

SEO、ルーティング、プリレンダリング、セキュリティ、展開、バンドルなどに基づいてビジネス Web サイトとアプリケーションを構築します。 GraphQL リゾルバーを抽出して、内部 API または外部 API を作成します。単一のアプリに制限されないでください。さまざまなデータベースを使用するアプリケーションを構築します。 NodeJS データベース ドライバーを使用して、外部データベースと対話できます。

Webiny は、コード バンドル、IaC、展開メカニズム、およびプロジェクト組織を提供します。製品をリストの先頭に追加して、SaaS を全世界に提供します。組み込みの AWS Cognito とセキュリティ フレームワークを利用して、ACL でアプリケーションの一部または全体を保護します。

Auth0、OKTA などのサポートを追加します。ヘッドレス CMS、ページ ビルダー、フォーム ビルダー、ファイル マネージャーなどを利用できます。ラムダ関数から新しい GraphQL API への CLI プラグインを使用して定型コードを生成します。

Webiny の管理 UI には、30 を超える異なる React コンポーネントが含まれています。また、DDoS 保護、CDN、および 11 9 のデータ耐久性も利用できます。 Webiny は、試行錯誤や調査にかかる時間を節約します。

AWS 聖杯

Python でサーバーレス アプリケーションを作成するためのフレームワークをお探しですか?

AWS Lambda を介してアプリを構築およびデプロイできる AWS Chalice をお試しください。

Chalice は、アプリを作成、デプロイ、管理するためのコマンドライン ツール、Amazon S3、Amazon API Gateway、Amazon SQS、Amazon SNS などの AWS サービスと統合するためのデコレータベースの API を提供します。

これにより、REST API の作成、定期的に実行されるタスクの実行、ラムダ関数と S3 イベントや SQS キュー、その他の AWS リソースとの接続が可能になります。コードを作成した直後に、Chalice を使用するとアプリケーションをすぐに実行してデプロイできます。 Chalice は、Python 2.7、3.6、3.7、3.8 を含む、AWS Lambda がサポートする Python のすべてのバージョンをサポートします。

アプリケーションをデプロイする前に、すべての資格情報を構成します。ただし、AWS CLI または boto3 を実行するようにすでに設定している場合は、これをスキップしてください。デプロイ後、必要に応じて変更を加え、変更を再デプロイできます。チュートリアル、トピック、API リファレンスを活用して、知識をさらに深めてください。

ザッパ

Zappa は 、Python アプリを作成するためのサーバーレス フレームワークです。これにより、API Gateway と AWS Lambda 上でサーバーレスおよびイベント駆動型の Python アプリを構築およびデプロイする作業が容易になります。これを使用すると、現在の展開の最小限のコストで、メンテナンスなし、ダウンタイムなし、無限のスケーリングを実現できます。

インストールと構成に進む前に、Python 3.x と AWS アカウントがあり、AWS 認証情報ファイルが適切にインストールされていることを確認してください。 Zappa は pip を使用して簡単にインストールすることもできます。

Zappa は展開設定を自動的にセットアップします。設定が適切に構成されたら、単一のコマンド ラインでアプリを運用ステージにデプロイします。 API Gateway CloudFormation テンプレートが必要な場合は、テンプレート コマンドを使用します。 SSL 証明書、AWS Certificate Manager 証明書、Let’s Encrypt 証明書を使用して、Zappa をカスタムのサブドメインとドメイン名にデプロイします。

API キー、IAM ポリシー、API ゲートウェイ Lambda オーソライザー、Cognito ユーザー プール オーソライザー、API ゲートウェイ リソース ポリシーなど、API ゲートウェイで安全なエンドポイントを有効にします。さらに、ローカル環境、リモート AWS 環境、S3 ファイル経由でリモート環境などの環境変数を設定できます。

建築家

完全なローカル、オフラインのワークフローなどを備えた、次世代の AWS クラウド機能ベースのサーバーレス インフラストラクチャを作成、デプロイ、保守します。

サーバーレスフレームワークを設計する
サーバーレスフレームワークを設計する

これはかなり洗練されたプロジェクトであり、 プロジェクトの理念 ドキュメント ページ 全体をよく読む必要があります。

Up は、無限のスケーラビリティの可能性を備えたサーバーレス アプリケーションの展開を支援するフレームワークです。さらに、Up を使用して静的 Web サイト、API などを展開することもできます。これらすべてにより、自分にとって本当に重要なことに取り組む柔軟性が得られます。

サーバーレス アプリを数秒で展開
サーバーレス アプリを数秒で展開

幸いなことに、Up は従来の HTTP サーバー インスタンスをデプロイしているため、新しいプロトコルを学ぶ必要はありません。代わりに、Django や Express などのお気に入りのフレームワークを使用して始めてください。

クラウディア.js

Claudia.js は、 開発者に Node.js ベースのプロジェクトを Lambda システムと API にプッシュする手段を提供します。 Claudia は、展開タスクと構成を自動化し、最新の開発用に JavaScript 環境を自動的にセットアップします。

それで、これはあなたにとって何を意味しますか? Claudia を使用すると、マイクロサービスの取り組みを数分で開始できます。その結果、考えることが大幅に減り、実際の問題の解決に集中できる時間が大幅に増えます。

Claudia を使用する主な理由は次のとおりです。

  • 単一のコマンドでインスタンスをデプロイ、更新、管理します
  • NPM パッケージで問題なく動作します
  • 統合されたボイラープレート構造により、目の前のタスクに集中するためのより多くのスペースが得られます。
  • バージョン管理により、複数のバージョンを同時に作業できる
  • 学習曲線が小さい

ジェッツ

ルビーは好きですか?

Jets Ruby サーバーレス フレームワーク
Jets Ruby サーバーレス フレームワーク

そうすれば、マイクロサービスを作成およびデプロイするためのサーバーレス Ruby フレームワークである Jets を 楽しんでいることに気づくかもしれません。このフレームワークには、API 構造を生成して Lambda にデプロイするために必要なツールがすべて含まれています。

Jets は、 AWS が提供するさまざまなサービスやリソースをつなぎ合わせるために使用できる個別の関数を作成するためにも機能します。

Jets の仕組みは、フレームワークが既存のコードを Lambda およびその他の AWS サービスの関数に変換することです。その結果、デプロイメントやプロビジョニングなどをスキップして、機能コードの作成により多くの時間を費やすことができます。

プルミ

Pulumi は、 ソフトウェアを作成してクラウドベースのプラットフォームに展開するのに役立つシームレスな SDK を提供します。 SDK は、コンテナー、ホストされたサービス、コア インフラストラクチャ、およびコンテナーをサポートします。

プルミ
プルミ

好きな言語でコードを書くことができます。 Pulumi は、GCP、AWS、Kubernetes、Azure などのサービス プロバイダー上でリソースをプロビジョニングおよび管理します。

サーバーレス

「幸運にも Serverless.com という ドメイン名を取得できた人が、運を金にしているだけだ!」と思っていることはわかりますが、そうではない、と言わざるを得ません。

サーバーレス AWS Lambda API Gateway などを活用したサーバーレス アプリケーション フレームワーク
サーバーレス AWS Lambda API Gateway などを活用したサーバーレス アプリケーション フレームワーク

Serverless Framework に は GitHub 上に約 30,000 個ものスター があり、これが最も人気のある サーバーレス フレームワーク となっています。

では、このフレームワークを使って何ができるのでしょうか?何よりもまず、イベントなどに応答する手段としてマイクロサービスを使用するアプリを作成できます。たとえば、アプリは決定的な呼び出しがある場合にのみ応答し、需要に基づいてスケールアップおよびスケールダウンします。その結果、アイドル状態のサービスの維持に費やされる多額の費用を節約できます。

このフレームワークは、AWS Lambda、Google Cloud Functions などの新しいイベント駆動型コンピューティング サービスを使用します。これはコマンドライン ツールであり、サーバーレス アーキテクチャの開発と展開のためのスキャフォールディング、ワークフローの自動化、ベスト プラクティスを提供します。プラグインを介して完全に拡張することもできます。

認証0

サーバーレスの概念に熱心であれば、サーバーレス フレームワークについて聞いたことがあるでしょう。これは、この記事の前半で説明したものです。

ID認証に決して妥協しない0
ID認証に決して妥協しない0

Auth0 は 、すべての Serverless Framework ユーザーにとって効果的なアドオンである Auth0 Web タスクを構築するための取り組みをまとめました。このプロジェクトは Webtask と呼ばれ、ホームページはここにあります。

基本的に、Webtask を使用する と、インフラストラクチャの互換性を気にすることなくアプリを作成 できます。 Webtask が提供する CLI を使用してサーバー側ロジックを作成し、すべての機能をデプロイします。その後、HTTP プロトコルを使用してバックエンドに移動できます。

更新: Webtask Web サイトはその後閉鎖されました。

サーバーレスの例

この投稿の前半でサーバーレス フレームワークについて説明しましたが、基本的に、これは サーバーレス フレームワークのさまざまな使用例を 紹介するフォローアップ リソースです。

例 Explorer サーバーレス関数ディレクトリ
例 Explorer サーバーレス関数ディレクトリ

これらの例は 1 つの特定のフレームワークに限定されていますが、新しいサーバーレスの概念について学ぶプロセスを楽しむことができます。

この例は、AWS、Azure、Kubeless、Google Cloud、OpenWhisk などのプラットフォームで利用できます。さらに、nodeJS、Python、Go、Java、PHP、Swift の 6 つの異なる言語がサポートされています。

Twitter Joke Bot OAuth Dropbox API などのお気に入りをチェックしてください。

実践的な学習をお探しの場合は、この オンライン コース をチェックしてください。

「サーバーレス アプリを作成するための 12 のフレームワーク」についてわかりやすく解説!絶対に観るべきベスト2動画

AWS Application Composer ではじめるサーバーレスアプリケーション
Terraformとサーバーレスフレームワークの連携

サーバーレステクノロジーに興奮していますか?新しいプロジェクトに取り組みたいと思っていますが、どこから始めればよいかわかりませんか?

ここでは、実際に入手できる最も人気のあるサーバーレス フレームワークをまとめて紹介します。

サーバーレス コンピューティングは、より多くの作成に時間を費やしながら管理を減らすというアイデアを好む人々の間で大流行しています。そして、この技術はまだ非常に新しいものですが、多くの開発者やエンジニアは、サーバーレス運用の将来に向けたエキサイティングなソリューションの構築に全力を尽くしています。

すでにご存知かと思いますが、サーバーレスとは​​、正確には サーバーがないことを 意味するわけではありません。それは単に サーバーが減り 機能が増えること を意味します。次のプロジェクト用に信頼性の高い FaaS (Functions as a Service) プラットフォームをお探しの場合は、最高のサーバーレス コンピューティング プラットフォームに関する以前の記事をご覧ください。

そうは言っても、利用できるフレームワークを見てみましょう。最後に、サーバーレス分野で開発されているいくつかのエキサイティングなプロジェクトを紹介しますので、ぜひ最後までご覧ください。

AWS アンプリファイ

AWS Amplify フレームワークを使用して、ウェブおよびモバイル向けのスケーラブルなサーバーレス アプリを迅速に構築し、無限の柔軟性を実現します。スマート ワークフローを使用して、データ、ストレージ、認証などを使用してサーバーレス バックエンドを構成します。

少ないコード行でモバイルアプリやウェブアプリを既存または新規の AWS リソースに接続します。数回クリックするだけで、シングルページ Web アプリ、サーバー側でレンダリングされたアプリ、ステータス Web サイトをホストして展開できます。また、コンテンツとアプリのユーザーを簡単に管理することもできます。

AWS Amplify は、フロントエンドのモバイル開発者やウェブ開発者が AWS 上でフルスタックのアプリケーションをより迅速に作成し、必要なときにいつでもアプリケーションをカスタマイズできるように支援します。 Amplify は、React、Angular、JavaScript、Vue.js、Next.js などの多くの Web フレームワークと、iOS、Ionic、Flutter、Android、React Native などのモバイル プラットフォームをサポートしています。

Amplify の多くの UI コンポーネントと統合して、アプリ開発を加速できます。開発用に、認証、インタラクション、関数、データストア、ユーザー管理、API (REST、GraphQL)、分析、AI/ML 予測、ストレージ、PubSub、プッシュ通知などの多くの機能とツールを入手します。さらに、マネージド ホスティング、PR プレビュー、CI/CD、カスタム ドメイン、展開の監視も利用できます。

ミッドウェイ

従来のサーバー側アプリケーション、小規模プログラム、マイクロサービスを作成し、 Midway を使用してサーバーレス サービスを構築するための Node.js サーバーレス フレームワークを入手してください。これは、IoC インジェクション メカニズムを使用してアプリのロジックを分離し、大規模な Node.js アプリの開発をより自然に簡単にする TypeScript で書かれています。

Midway は、基本フレームワークとして Express、EggJS、または koa を使用できます。 GRPC、Dubbo.js、RabbitMQ、Socket.io などの基本的なソリューションを独立して使用できるように提供します。さらに、Midway は、フルスタックまたはフロントエンド開発者向けの Node.js サーバーレス Web フレームワークとしても機能します。

Midway を使用すると、コンテナ、VM、Alibaba Cloud、AWS、Tencent Cloud 上で実行される次世代アプリを構築できます。 Vue や React と簡単に統合することもできます。次のような多くの機能があります。

  • グループ化およびスケーラブルなプラグイン
  • アドバンストグループ ミドルウェアの互換性とアーキテクチャ
  • デカップリング機能とアプリケーションの階層化
  • 次世代開発の経験
  • koa ミドルウェアと Egg プラグインをサポートします。

ウェビニー

Webiny サーバーレス アプリケーション フレームワークを使用して、サーバーレス アプリケーションを設計、展開、構築するために必要なものをすべて入手します。さまざまなユースケース向けに設計されています。アーキテクチャや技術スタックを変更し、組織やプロジェクトのニーズに適応させることができます。

SEO、ルーティング、プリレンダリング、セキュリティ、展開、バンドルなどに基づいてビジネス Web サイトとアプリケーションを構築します。 GraphQL リゾルバーを抽出して、内部 API または外部 API を作成します。単一のアプリに制限されないでください。さまざまなデータベースを使用するアプリケーションを構築します。 NodeJS データベース ドライバーを使用して、外部データベースと対話できます。

Webiny は、コード バンドル、IaC、展開メカニズム、およびプロジェクト組織を提供します。製品をリストの先頭に追加して、SaaS を全世界に提供します。組み込みの AWS Cognito とセキュリティ フレームワークを利用して、ACL でアプリケーションの一部または全体を保護します。

Auth0、OKTA などのサポートを追加します。ヘッドレス CMS、ページ ビルダー、フォーム ビルダー、ファイル マネージャーなどを利用できます。ラムダ関数から新しい GraphQL API への CLI プラグインを使用して定型コードを生成します。

Webiny の管理 UI には、30 を超える異なる React コンポーネントが含まれています。また、DDoS 保護、CDN、および 11 9 のデータ耐久性も利用できます。 Webiny は、試行錯誤や調査にかかる時間を節約します。

AWS 聖杯

Python でサーバーレス アプリケーションを作成するためのフレームワークをお探しですか?

AWS Lambda を介してアプリを構築およびデプロイできる AWS Chalice をお試しください。

Chalice は、アプリを作成、デプロイ、管理するためのコマンドライン ツール、Amazon S3、Amazon API Gateway、Amazon SQS、Amazon SNS などの AWS サービスと統合するためのデコレータベースの API を提供します。

これにより、REST API の作成、定期的に実行されるタスクの実行、ラムダ関数と S3 イベントや SQS キュー、その他の AWS リソースとの接続が可能になります。コードを作成した直後に、Chalice を使用するとアプリケーションをすぐに実行してデプロイできます。 Chalice は、Python 2.7、3.6、3.7、3.8 を含む、AWS Lambda がサポートする Python のすべてのバージョンをサポートします。

アプリケーションをデプロイする前に、すべての資格情報を構成します。ただし、AWS CLI または boto3 を実行するようにすでに設定している場合は、これをスキップしてください。デプロイ後、必要に応じて変更を加え、変更を再デプロイできます。チュートリアル、トピック、API リファレンスを活用して、知識をさらに深めてください。

ザッパ

Zappa は 、Python アプリを作成するためのサーバーレス フレームワークです。これにより、API Gateway と AWS Lambda 上でサーバーレスおよびイベント駆動型の Python アプリを構築およびデプロイする作業が容易になります。これを使用すると、現在の展開の最小限のコストで、メンテナンスなし、ダウンタイムなし、無限のスケーリングを実現できます。

インストールと構成に進む前に、Python 3.x と AWS アカウントがあり、AWS 認証情報ファイルが適切にインストールされていることを確認してください。 Zappa は pip を使用して簡単にインストールすることもできます。

Zappa は展開設定を自動的にセットアップします。設定が適切に構成されたら、単一のコマンド ラインでアプリを運用ステージにデプロイします。 API Gateway CloudFormation テンプレートが必要な場合は、テンプレート コマンドを使用します。 SSL 証明書、AWS Certificate Manager 証明書、Let’s Encrypt 証明書を使用して、Zappa をカスタムのサブドメインとドメイン名にデプロイします。

API キー、IAM ポリシー、API ゲートウェイ Lambda オーソライザー、Cognito ユーザー プール オーソライザー、API ゲートウェイ リソース ポリシーなど、API ゲートウェイで安全なエンドポイントを有効にします。さらに、ローカル環境、リモート AWS 環境、S3 ファイル経由でリモート環境などの環境変数を設定できます。

建築家

完全なローカル、オフラインのワークフローなどを備えた、次世代の AWS クラウド機能ベースのサーバーレス インフラストラクチャを作成、デプロイ、保守します。

サーバーレスフレームワークを設計する
サーバーレスフレームワークを設計する

これはかなり洗練されたプロジェクトであり、 プロジェクトの理念 ドキュメント ページ 全体をよく読む必要があります。

Up は、無限のスケーラビリティの可能性を備えたサーバーレス アプリケーションの展開を支援するフレームワークです。さらに、Up を使用して静的 Web サイト、API などを展開することもできます。これらすべてにより、自分にとって本当に重要なことに取り組む柔軟性が得られます。

サーバーレス アプリを数秒で展開
サーバーレス アプリを数秒で展開

幸いなことに、Up は従来の HTTP サーバー インスタンスをデプロイしているため、新しいプロトコルを学ぶ必要はありません。代わりに、Django や Express などのお気に入りのフレームワークを使用して始めてください。

クラウディア.js

Claudia.js は、 開発者に Node.js ベースのプロジェクトを Lambda システムと API にプッシュする手段を提供します。 Claudia は、展開タスクと構成を自動化し、最新の開発用に JavaScript 環境を自動的にセットアップします。

それで、これはあなたにとって何を意味しますか? Claudia を使用すると、マイクロサービスの取り組みを数分で開始できます。その結果、考えることが大幅に減り、実際の問題の解決に集中できる時間が大幅に増えます。

Claudia を使用する主な理由は次のとおりです。

  • 単一のコマンドでインスタンスをデプロイ、更新、管理します
  • NPM パッケージで問題なく動作します
  • 統合されたボイラープレート構造により、目の前のタスクに集中するためのより多くのスペースが得られます。
  • バージョン管理により、複数のバージョンを同時に作業できる
  • 学習曲線が小さい

ジェッツ

ルビーは好きですか?

Jets Ruby サーバーレス フレームワーク
Jets Ruby サーバーレス フレームワーク

そうすれば、マイクロサービスを作成およびデプロイするためのサーバーレス Ruby フレームワークである Jets を 楽しんでいることに気づくかもしれません。このフレームワークには、API 構造を生成して Lambda にデプロイするために必要なツールがすべて含まれています。

Jets は、 AWS が提供するさまざまなサービスやリソースをつなぎ合わせるために使用できる個別の関数を作成するためにも機能します。

Jets の仕組みは、フレームワークが既存のコードを Lambda およびその他の AWS サービスの関数に変換することです。その結果、デプロイメントやプロビジョニングなどをスキップして、機能コードの作成により多くの時間を費やすことができます。

プルミ

Pulumi は、 ソフトウェアを作成してクラウドベースのプラットフォームに展開するのに役立つシームレスな SDK を提供します。 SDK は、コンテナー、ホストされたサービス、コア インフラストラクチャ、およびコンテナーをサポートします。

プルミ
プルミ

好きな言語でコードを書くことができます。 Pulumi は、GCP、AWS、Kubernetes、Azure などのサービス プロバイダー上でリソースをプロビジョニングおよび管理します。

サーバーレス

「幸運にも Serverless.com という ドメイン名を取得できた人が、運を金にしているだけだ!」と思っていることはわかりますが、そうではない、と言わざるを得ません。

サーバーレス AWS Lambda API Gateway などを活用したサーバーレス アプリケーション フレームワーク
サーバーレス AWS Lambda API Gateway などを活用したサーバーレス アプリケーション フレームワーク

Serverless Framework に は GitHub 上に約 30,000 個ものスター があり、これが最も人気のある サーバーレス フレームワーク となっています。

では、このフレームワークを使って何ができるのでしょうか?何よりもまず、イベントなどに応答する手段としてマイクロサービスを使用するアプリを作成できます。たとえば、アプリは決定的な呼び出しがある場合にのみ応答し、需要に基づいてスケールアップおよびスケールダウンします。その結果、アイドル状態のサービスの維持に費やされる多額の費用を節約できます。

このフレームワークは、AWS Lambda、Google Cloud Functions などの新しいイベント駆動型コンピューティング サービスを使用します。これはコマンドライン ツールであり、サーバーレス アーキテクチャの開発と展開のためのスキャフォールディング、ワークフローの自動化、ベスト プラクティスを提供します。プラグインを介して完全に拡張することもできます。

認証0

サーバーレスの概念に熱心であれば、サーバーレス フレームワークについて聞いたことがあるでしょう。これは、この記事の前半で説明したものです。

ID認証に決して妥協しない0
ID認証に決して妥協しない0

Auth0 は 、すべての Serverless Framework ユーザーにとって効果的なアドオンである Auth0 Web タスクを構築するための取り組みをまとめました。このプロジェクトは Webtask と呼ばれ、ホームページはここにあります。

基本的に、Webtask を使用する と、インフラストラクチャの互換性を気にすることなくアプリを作成 できます。 Webtask が提供する CLI を使用してサーバー側ロジックを作成し、すべての機能をデプロイします。その後、HTTP プロトコルを使用してバックエンドに移動できます。

更新: Webtask Web サイトはその後閉鎖されました。

サーバーレスの例

この投稿の前半でサーバーレス フレームワークについて説明しましたが、基本的に、これは サーバーレス フレームワークのさまざまな使用例を 紹介するフォローアップ リソースです。

例 Explorer サーバーレス関数ディレクトリ
例 Explorer サーバーレス関数ディレクトリ

これらの例は 1 つの特定のフレームワークに限定されていますが、新しいサーバーレスの概念について学ぶプロセスを楽しむことができます。

この例は、AWS、Azure、Kubeless、Google Cloud、OpenWhisk などのプラットフォームで利用できます。さらに、nodeJS、Python、Go、Java、PHP、Swift の 6 つの異なる言語がサポートされています。

Twitter Joke Bot OAuth Dropbox API などのお気に入りをチェックしてください。

実践的な学習をお探しの場合は、この オンライン コース をチェックしてください。

「サーバーレス アプリを作成するための 12 のフレームワーク」についてわかりやすく解説!絶対に観るべきベスト2動画

AWS Application Composer ではじめるサーバーレスアプリケーション
Terraformとサーバーレスフレームワークの連携