流れ9の7語目 / 10

サーバーレス

クラウド

設計レビューの続きです。構成図の端に、サーバーの絵がない「注文確認メール送信」という箱があります

「メールの送信は、サーバーレスで作ります」
「サーバーレス」って、何のことだろう…?

サーバーレスは、サーバーの用意や管理を自分たちでしなくていい作り方です。

処理を置いておくと、必要なときだけ動き、動いた分だけ料金がかかります。サーバーそのものはクラウド側にあります。

このページで分かること読む 約3分・問題 2問
  • サーバーレスは「サーバーがない」のではなく、OSの更新や故障の対応といった「サーバーのお世話」を、まるごとクラウドの会社に任せられる作り方
  • 自分たちは処理(プログラム)を置くだけ
  • 呼び出された回数と動いた時間に応じて料金がかかり、たくさん呼ばれたら自動で増える
  • 向き不向きがある

身近な例えで理解する

家にプリンターを置かなくても、コンビニのコピー機で印刷でき、刷った枚数分だけ払います。インクや紙の補充、故障の修理はお店がします。

  • 自分でプリンターを買う自分たちでサーバーを用意する
  • コンビニのコピー機サーバーレス
  • 刷った枚数分払う動いた分だけ料金
  • 補充や修理はお店サーバーの管理はクラウド側

ただ、毎日たくさん刷るなら、自分でプリンターを買ったほうが安いこともあります。サーバーレスも、ずっと動き続ける処理なら割高になることがあります。

ちょっと確認

Q14択

「サーバーレス」の説明として正しいものは?

例えを外して、実際のしくみ

ここからは実際のしくみ
サーバーはある

サーバーレスでも、処理はどこかのサーバーで動いています。「サーバーがない」のではなく、OSのアップデートや故障の対応、台数の調整といった「サーバーのお世話」を、まるごとクラウドの会社に任せられる、という意味です

きっかけ(イベント)で動く

「注文が入った」「ファイルが置かれた」「決まった時刻になった」などをきっかけに、置いておいた処理(関数)が動きます。動いていないときは待っているだけです

料金と増え方

AWSのLambdaでは、呼び出された回数と、動いた時間(割り当てたメモリの量で単価が変わります)に応じて料金を払います。動いていない間に、サーバー1台分の料金がずっとかかることはありません。呼ばれる回数が増えると、自動でたくさん動かしてくれるので、オートスケーリング(→86)の設定はいりません

向き不向き

1回に動ける時間に上限があります(Lambdaのふつうの関数は最長15分)。ずっと動き続ける処理や、1回がとても長い処理は、ふつうのサーバーやコンテナ(→75)のほうが向いていることがあります。Azureなら Azure Functions、Google Cloud なら Cloud Run functions など、ほかのクラウドにも同じ考え方のサービスがあります

このページのまとめ

サーバーレス
サーバーの用意・管理を自分たちでしなくていい作り方
関数
サーバーレスで動かす、ひとまとまりの処理
イベント
処理を動かすきっかけ(注文が入った、ファイルが置かれた など)
使った分だけ料金
呼び出された回数や動いた時間に応じて料金がかかること

先輩のひとことの意味

先輩「メールの送信は、サーバーレスで作ります」

「注文確認メールを送る処理は、自分たちでサーバーを用意せず、クラウドのサービスに置いておく。注文が入ったときだけ動き、その分だけ料金を払う」という意味です。メールを送るのは注文が入ったときだけなので、サーバーを1日中動かしておくより向いています。

練習問題で確かめる

Q24択

AWSのLambdaのようなサーバーレスのサービスの料金の考え方として正しいものは?

参考資料

ご意見・「これで例えて!」を募集しています

ご意見・ご感想・質問・間違いのご指摘など、何でもお気軽にお寄せください。「この言葉も例えで説明してほしい」「こんな例えなら分かりやすい」という声をもとに、新しいページや例えを作ります。

  • 説明してほしいITの言葉
  • 例えてほしい場面(部活・アルバイト・家事など)
  • 分かりにくかったところ・間違いのご指摘

意見箱は準備中です。

解説・例え・練習問題はすべてオリジナルです。参考にしているのは公式ドキュメントのみです。ご意見・ご感想・間違いのご指摘など、何でもお寄せください。確認してすぐに直します。

LinuCはLPI-Japanの登録商標です。当サイトはLPI-Japanおよび他の企業・団体とは関係ありません。

運営:core