$30 off During Our Annual Pro Sale. View Details »

現地初参加(と思われていない)の人のAWS re:Invent 2022 & AWS Lambda SnapStart for Java functionsについて / jawsugchiba-19

現地初参加(と思われていない)の人のAWS re:Invent 2022 & AWS Lambda SnapStart for Java functionsについて / jawsugchiba-19

2022.12.27 JAWS-UG千葉支部オンライン#19 re:Invent 2022 re:Cap での発表資料です。

Kenichiro Wada

December 27, 2022
Tweet

More Decks by Kenichiro Wada

Other Decks in Technology

Transcript

  1. BXT KBXTVH "846TFS(SPVQT BXTDPNNVOJUZ KBXTVHDIJCB
    2022.12.27
    JAWS-UG千葉⽀部オンライン#19
    re:Invent 2022 re:Cap
    和⽥健⼀郎@Keni_W
    ݱ஍ॳࢀՃ ͱࢥΘΕ͍ͯͳ͍
    ͷਓͷ
    "84SF*OWFOU

    "84-BNCEB4OBQ4UBSU GPS
    +BWBGVODUJPOTʹ͍ͭͯ

    View Slide

  2. ࠓ೔࿩͢͜ͱ
    KBXTVHDIJCB
    • ⾃⼰紹介
    • 初現地参戦!AWS re:Invent 2022
    • AWS Lambda SnapStart for Java
    functionsについて
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  3. ⾃⼰紹介
    ⽒名:和⽥ 健⼀郎
    所属:アイレット株式会社 エンジニア
    JAWS-UG 千葉 運営メンバー
    SORACOM UG東京 運営メンバー
    Twitter: @Keni_W Facebook : kenichiro.wada.3
    好きなAWSサービス : AWS Lambda
    2020年共著でサーバーレスの本書きました
    AWS Community Builder(Serverless)
    SORACOM MVC 2022

    View Slide

  4. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    遡ること2年前
    ・・・。
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  5. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    JAWS-UG千葉⽀部 オンライン #9で
    AWS re:Invent 2020
    現地参加したかったという発表をしました。
    https://speakerdeck.com/kwada/jawsug-chiba9
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  6. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    それから2年の時を経て、
    2022/11/27
    re:Inventが開催される
    ラスベガスの地へ
    降り⽴つことが
    できたのです。
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  7. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  8. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  9. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    すごく楽しかった。
    でも
    疲れた。

    View Slide

  10. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    想像以上に会場遠かった。

    View Slide

  11. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    英語⼤事
    (当たり前です)

    View Slide

  12. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    ここからは
    気になったサービス&アップデート
    について

    View Slide

  13. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  14. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  15. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  16. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    AWS Lambda好きなので、
    これは外せないアップデートを紹介

    View Slide

  17. ॳݱ஍ࢀઓʂ"84SF*OWFOU
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  18. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    • AWS Lambdaは現状、FaaS(Function as a Service)
    の代表格とも⾔える AWSのコンピューティングサービス
    です。
    • マネージメントコンソールやAPIを利⽤して、コードの
    アップロードするだけで、実⾏することができます。
    • つまり、開発者はサーバーの構築、管理は⼀切不要で、
    コードの実装のみに集中することができます。
    • また、リクエストに応じて、⾃動的にスケーリングを
    ⾏ってくれます。
    • リクエスト毎の課⾦となるため、関数が実⾏されない時
    には、⼀切料⾦が発⽣しません。そのため、Amazon
    EC2を利⽤した場合に⽐べて⼤幅に料⾦が下がるケース
    もあります。
    (基礎から学ぶサーバーレス開発 SECTION-004より)

    View Slide

  19. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    サーバーのことを考えずに
    コードを実⾏する

    View Slide

  20. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    「AWS Lambda Java」で
    Google検索すると、予測候補の中にでてくるのが

    View Slide

  21. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    ただし、遅いのは、起動(Cold Start)であって、
    Warm Start時の処理速度は
    全ランタイム中最速レベルのはずです。

    View Slide

  22. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/lambda-releases.html

    View Slide

  23. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    つまり、
    7年越しのアップデート!!!

    View Slide

  24. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  25. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    とりあえず、やってみた。
    ・SnapStart設定あり
    ・SnapStart設定なしおよび他のランタイム

    View Slide

  26. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    実⾏結果は・・・6s → 217msなど、めちゃくちゃ速くなっている。
    ・設定前
    ・設定後

    View Slide

  27. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    実⾏結果は・・・6s → 217msなど、めちゃくちゃ速くなっている。
    ・設定前
    ・設定後

    View Slide

  28. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    おおお。
    (寝れなくてにホテルの部屋で
    感嘆したとか、しなかったとか)

    View Slide

  29. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    • 現状はJava11(かつCorretto)限定
    • アーキテクチャもx86_64のみ
    • バージョン指定忘れずに($LATESTで使えるようになっ
    て欲しい気が・・・)
    • デプロイ時に、Lambda⽤のコンテナがSnapShotとし
    て⼤量に⽴ち上がるところは、Provisioned
    Concurrency感あり
    • レイテンシー重視の場合は、Provisioned
    Concurrencyを利⽤せよと書かれています。
    ※Provisioned ConcurrencyではLambda
    SnapStartは使えないとのこと
    • 他のRuntimeでも使えるようになると意外と使い所ある
    んじゃないかな?

    View Slide

  30. "84-BNCEB4OBQ4UBSU GPS+BWBGVODUJPOTʹ͍ͭͯ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide

  31. ऴΘΓ
    KBXTVHDIJCB
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ
    ࢀߟจݙ
    ɾϥεϕΨεཱྀߦه
    https://note.com/keni_w/n/na4fe70b87d70
    ɾ"84-BNCEB4OBQ4UBSU GPS
    +BWBGVODUJPOTʹ͍ͭͯͷهࣄ
    https://zenn.dev/keni_w/articles/20e73e7ba629d5

    View Slide

  32. ऴΘΓ
    KBXTVHDIJCB
    ご静聴
    ありがとう
    ございました
    ݱ஍ॳࢀՃͷਓͷ"84 SF*OWFOU
    "84 -BNCEB 4OBQ4UBSU GPS +BWB GVODUJPOTʹ͍ͭͯ

    View Slide