クリーム色の背景、色付き表示、高コントラスト、大きな文字のほうが読みやすいですか?配色と文字を選ぶと、すべてのページに一度で反映されます。

無料レッスン

サーバーレスが向く仕事

このレッスンのあとで: サーバーレスのコードが向いている仕事を見分けられる。

45分のレッスンコマンドなし

月末だけ忙しい経費精算

福岡の商社では、社員が領収書の写真を経費精算のシステムに送ります。写真が届くと、金額と日付を読み取ります。

普段は1日に50枚ほどです。ところが月末の2日間だけ、1日3,000枚に増えます。

月末に合わせて大きなサーバーを用意すると、残りの28日はほとんど空いたままです。

このレッスンのゴール

メモ

サーバーレスのコードが向いている仕事を見分けられる。

今日のキーワード

ことばいみれい
サーバーレスサーバーの管理をせずにコードを動かす方法
関数呼ばれたときだけ動く短いコード
イベント関数を呼び出すきっかけ写真がバケットに置かれた
呼び出し回数関数が動いた回数
実行時間の上限1回の呼び出しで動ける最長の時間
コールドスタートしばらく呼ばれなかった後の遅い立ち上がり

学生が入力するセルは、このプレビューでは空白です。

イベントが来たときだけ動く

サーバーレスでは、サーバーを用意しません。短いコードを関数として登録します。

関数は、イベントが来たときだけ動きます。たとえば「領収書の写真がバケットに置かれた」「毎晩0時になった」がイベントです。

仕事がない時間、関数は動いていません。料金は、呼び出し回数と動いた時間で決まります。

試す: イベントで関数を呼ぶ

コード: python
# 関数は、イベントを1つ受け取って、1回分の仕事をします。
def handle(event):
    key = event["key"]
    # 本物なら、ここで写真から金額と日付を読み取ります
    print("処理します:", key)
    return "完了"


# イベントが3回来たつもりで、関数を3回呼びます
events = [
    {"key": "receipts/2026-10-31/0001.jpg"},
    {"key": "receipts/2026-10-31/0002.jpg"},
    {"key": "receipts/2026-10-31/0003.jpg"},
]
for event in events:
    print(handle(event))

# 4件目のイベントを一覧に加えて、もう一度実行しましょう。

向く仕事と向かない仕事

サーバーレスが向くのは、きっかけがはっきりした短い仕事です。量が日によって大きく変わる仕事にも向きます。月末に3,000回呼ばれても、クラウド側が自動で数を増やします。

向かないのは、長く動き続ける仕事です。関数には実行時間の上限があります。上限が15分なら、2時間かかる集計は途中で止められます。

また、しばらく呼ばれないと、最初の1回はコールドスタートで少し遅れます。

例: サーバーレスにするか

仕事向き理由
領収書の写真から金額を読む向く短く、きっかけがある
毎晩0時に前日の件数をメールする向く1日1回だけ動く
2時間かかる月次の集計向かない上限の時間を超える
1日中、毎秒注文を受けるサイト向かないことが多いずっと動くならサーバーが安い

学生が入力するセルは、このプレビューでは空白です。

よくある間違い

注意

サーバーレスにはサーバーが本当にない、と思う人がいます。実際は、コードはクラウドの会社のサーバーで動いています。サーバーの準備や管理を、自分たちがしなくてよいという意味です。だから、上限の時間やメモリなど、相手が決めた枠の中で動かす必要があります。

呼ばれない時間は0円

例として、呼び出し1回が2円、月末に合わせたサーバーが月36,000円とします。金額は説明用の例です。

経費精算は、普段の28日で1,400回、月末の2日で6,000回です。合わせて7,400回、14,800円です。サーバーより安くなります。

1日中、毎秒呼ばれる仕事なら、1か月で約260万回です。それならサーバーの方が安くなります。

例: 月の料金で比べる

仕事呼び出し回数サーバーレスサーバー
経費精算の写真7,400回14,800円36,000円
毎秒の注文2,592,000回5,184,000円36,000円

学生が入力するセルは、このプレビューでは空白です。

授業で使いますか?このモジュールを学生に割り当てると、教員用ガイド、自動採点つきの課題、学生ごとのラボを使えます。