サーバーレスとは?

 

サーバーレスとは?

簡単にいうと、一時的に利用するサーバのこと。

サーバのレンタカーみたいなもの。

 

何のためにある?

ビッグデータ分析などは常にサーバが必要なわけでなく、大量のサーバリソースを、短期間で集中的に利用するケースが多いです。

そのため、システムを利用していない期間サーバを借りているとその分コスト増になってしまいます。

これを解決するのがサーバレスサービスというわけです。

サーバを利用しないわけではないので要注意です。

クラウドサーバではないのでサーバレスと覚えておくといいかもしれません。

 

サーバレスとクラウドサーバーの比較

サーバレスとクラウドサーバを比較するとわかりやすくなります。

 

サーバーレス クラウドサーバ
課金面 実行時間のみ サーバの稼働時間
管理面 システムのみ サーバ環境すべて
処理面 処理データのみ 保存データすべて
柔軟面 自動オートスケール対応 オートスケール対応(設定は自分)

 

どのように機能する(動かす)?

ファンクション(関数)をトリガー(きっかけ)にして、特定の条件を満たすとCPU、メモリ、ストレージなどがシステムに割り当てられ、事前に自分で用意したプログラムが実行され、処理終了後にリソースを開放するという動きをします。

 

関数(ファンクション)をトリガーにプログラムが動作することから、サーバレスを用いたシステムをFaaS(Function as a Service)と呼ばれます。

AWSのサーバレスサービス一覧

サーバーレス - 詳細 | AWS (amazon.com)

  • Lambda
  • API_Gateway
  • SNS
  • SQS
  • EventBridge
  • SES
  • Step_Functions

 

サーバーレスサービスを用いた設計パターン

サーバーレスパターン (amazon.com)

上記公式サイトを参考にいろいろなパターンを考えてみよう。

独自のものができあれば、それが一番のシステム設計となりえるでしょう。

まずは要件を洗い出すところからが一般的なやり方ですが、

作ってから、満たせる要件を洗い出すやり方もありですね。