Serverlessの今とこれから / Everything will be Serverless

5cd1b99b9950b26e8ee005bd6cd1a860?s=47 Masashi Terui
November 02, 2019

Serverlessの今とこれから / Everything will be Serverless

JAWS Festa Sapporo 2019
https://jft2019.jaws-ug.jp/session/544/

5cd1b99b9950b26e8ee005bd6cd1a860?s=128

Masashi Terui

November 02, 2019
Tweet

Transcript

  1. Serverlessの 今とこれから Everything will be Serverless

  2. Masashi TERUI Cloud Architect/Developer 札幌在住兼業リモートワーカー Serverlessconf 2016,2017,2018 Speaker ServerlessDays 2019

    Co-Chair AWS Premier Partner https://www.serverworks.co.jp 01. Serverworks 02. Serverless, DevOps etc https://willy.works/ Freelancer
  3. Serverless 年表 駆け足で振り返る S3, Kinesis Data Streams, DynamoDBの イベントにトリガーする小さなコードを実行 AWS

    Lambda 発表 2014.11 REST APIのBackendとして Lambdaが使えるようになる API Gateway 発表 2015.7
  4. 新しいパラダイムの予感を感じさせつつも 「Serverlessで大規模システムなんて…」 「主流になることはない」 Serverlessconf 2016 2016.9 メジャーで実践的なフレームワークが登場 SLS v1.0, AWS

    SAM 2016.11 スタートアップや先進的なWeb, Mobile系での採用例 大規模システムの設計手法 運用監視(Observability) Serverlessconf 2017,8 2017.11, 2018.9
  5. Serverless全面推しの年 Custom Runtime, Improved VPC NW API Gateway WebSocket etc…

    re:Invent 2018 2018.12 大企業、大規模システム採用例 過去最高のエンゲージメント・熱量 ServerlessDays 2019 2019.10 そして 現在
  6. かつてIaaSが主流になった時と 同じ流れをたどっている

  7. そこには コミュニティの力 が

  8. 議論されてきたトピック 世界中のコミュニティによって答えはもう出ている 設計 • マイクロサービス • イベントドリブン • データモデリング 開発

    • デプロイ • テスト手法 • CI/CD 運用 • モニタリング • ログ管理 • 分散トレーシング
  9. 議論されてきたトピック 世界中のコミュニティによって答えはもう出ている 設計 • マイクロサービス • イベントドリブン • データモデリング 開発

    • デプロイ • テスト手法 • CI/CD 運用 • モニタリング • ログ管理 • 分散トレーシング
  10. 議論されてきたトピック 世界中のコミュニティによって答えはもう出ている 設計 • マイクロサービス • イベントドリブン • データモデリング 開発

    • デプロイ • テスト手法 • CI/CD 運用 • モニタリング • ログ管理 • 分散トレーシング
  11. そして クラウドの進化 新サービス、アップデートの嵐

  12. そして、現在

  13. グローバル展開の コネクテッドカーシステム 数百のマイクロサービス 設計・開発手法 Slide非公開 数百万台の接続を想定した 大規模IoTプラットフォーム 大容量DynamoDB コスト最適化 Slide公開有

    AIBOを始めとした 多くのサ−バレスシステムの 分散トレーシングおよび ログ統合管理 Slide公開予定? TOYOTA DAIKIN SONY 大企業が先進的な大規模システムを 自社開発する時の1st Choiceに
  14. 小さな飲食店の情シスが 圧倒的業務改善して イケてるスタートアップに進化 サーバを売るほど持つISPだって 本気でサーバレスで開発してる

  15. Lambdaがメイン Containerが補完 Modern Serverlessの今

  16. EC2, RDSからではなく まずServerlessから 自社開発を前提として まずServerlessでできないか考える ↓ できないことはほとんどないw 大規模になる時にスペシャリストの支援

  17. Serverlessのスペシャリストは AWSのスペシャリストか? 答えはNO インフラを意識しなくなり アプリケーションの価値が全てになる アプリケーションを理解し 適切にサービスを組み合わせる力が必要 API GatewayやDynamoDBは 立ち上げればすぐ使える

    その中にどのようなAPIを組むか どのようにデータを入れるかが重要 これらに現状近い位置にいるのは AWSエンジニアではなく アプリケーションエンジニア
  18. Serverlessの 流れは止まらない 誰もが最小のコストで最大の成果を求める だから運用は減らしたいし 自前で作らずにサービスを使う 柔軟にスケールするシステムを求め より組織的にスケールする設計・開発方式を探す

  19. “王者はコードで全てを作り出す人から サービスの組み合わせを知り最小限の コードだけを書く人になる” 個人的にはちょっとだけ異論があって 適切な組み合わせと繋ぎ方を理解するのは アプリケーションの作り方を知る人だろうと 思ってる https://medium.com/@PaulDJohnston/cloud-2-0-code-is-no-longer-king-serverless-has-dethroned-it-c6dc955db9d5

  20. “未来は必ずサーバーレスになります それはもうサーバーレスと呼ばれてないかもしれないけど” https://yoshidashingo.hatenablog.com/entry/sdays2019

  21. Template Lorem Ipsum simply Template Lorem Ipsum simply もっと広がるServerless Serverless

    = FaaSではない VPC Cold Start ペナルティの改善 Custom Runtime 実行環境の自由化 現実的なRDB利用 フレームワーク持ち込み あとはNAT Gateway無しで外部通信させて!!
  22. “全部はFaaSにはならないけど大抵の人が思ってるより多くのものは FaaS(とNoSQL)でいけるよってことは主張していきたい” https://twitter.com/marcy_terui/status/989390567174950913

  23. Lorem Ipsum is simply du Lorem Ipsum is simply du

    Long Runningな Batch処理 処理中のStateと中間データ(の場所)を State Machine Dataに乗せれば分割できる そもそも、そのBatchの粒度は適切なのか? Kinesis Data Streamsベースで Short Batch化できるかもよ?? 時間と量でバッファできるようになったからやりやすくなった 例 え ば
  24. NoSQLでも 整合性と検索性は 両立できる 更新対象のアイテムを集約する 条件付き書き込みを利用した楽観的ロック ACIDトランザクションもサポートされた 読み込みは都合の良いデータを非同期に生成

  25. Async/Event Drivenな設計がClient Sideまで 最高!! GraphQL Mutate/Subscribe AppSync From Polling to

    Push API Gateway WebSocket
  26. 正直、現状でも 機械学習の学習処理やHPCのような 超リソース集約的なもの あるいはRTB, 証券取引のような 超低レイテンシが求められるもの それ以外はほぼServerlessでイケる この辺はRescaleのようなHPC SaaSや G◦PのCloud

    Machine Leaningが 出てたりするわけで、結局Serverlessになる
  27. 黎明期 成長期 現在 未来 イマココ まずServerlessから考える 大体イケる 全てがServerlessに まとめ 過去・現在・未来

    さらに範囲が広がる Practiceの確立 課題がなくなっていき メリットが際立つ 期待と懐疑の混在 「部分的には使える」 「主流にはならない」
  28. Everything will be Serverless

  29. https://fukuoka.serverlessdays.io/