【eLV】サーバーレスアーキテクチャ入門に参加してきました。
概要
eLV connpass
【eLV】サーバーレスアーキテクチャ入門 connpass
【eLV勉強会:サーバーレスアーキテクチャ入門】
本年、2018/01/31(水)の再演(パワーアップ版)です!! https://elv.connpass.com/event/74232/
AWS Lambdaなどで話題のサーバーレス。
興味があるけれども、モヤっとしている。
一体何が出来るのか、興味がある。
なぜ敢えてサーバーレスなのか。
色々聞いてみたいけれど、今更聞けない、サーバーレス。
サーバーレスについて始めて学ぶ方も、改めて知識を整理したい方も
お気軽にご参加ください。
内容 | 講師 |
---|---|
【eLV勉強会:サーバーレスアーキテクチャ入門】 | 三井物産セキュアディレクション株式会社 中島 隆明さん |
1.サーバレスアーキテクチャとは
1.1. サーバレスアーキテクチャの誕生
- サーバレスの歴史
- 2012年サーバレスKen Frommのブログにて始めた
- 2014年 AWS Lambda提供開始
- 2015年 API Gateway提供開始
- 2016年 Azure Google IBMのサーバレス提供開始
- BaaS、FaaSがサーバレスにあたる
- FaaS Lambda,IBM Google Azure Functions
1.2. 従来型アーキテクチャとの比較
- インスタンスが不要
- 課金はコンピューティング時間。コードが動いていないときは、料金は発生しない
- 既存のコードは使えるが、データの永続化が問題になる
- データを保つためのサービスが必要(DynamoDB等)
- スケーリングはクラウドベンダーにて管理
- Faas関数はステートレス。一時領域は解放される
- 長時間の実行は制限されている。動かし続けるサービスには向かない
- 起動時の待ち時間は10ms。少し待ち時間がある
- スループットを求める場合には、向かない
- Lambdaでは、JavaScript,Pythonは10~100ms
- JVMは10秒程度かかる場合もある
- 言語によって、パフォーマンスが変わる
- PaaSとの対比
- インスタンスのライフサイクルが違う
- 拡張性がもっとも違い
- FaaSは、AutoScalingのみ
- FaaSの場合は、サイズの固定はできないことが多い
- コンテナとの対比
- コンテナはOSも触ることができる
- ビジネスロジックだけに集中したい場合は、FaaS
- サーバレスは運用不要か?
- アプリケーションの管理のために必要(課金が多すぎてアラート等)
- SPassSとの対比
- SPaaSテストがしづらい
- FaaSは関数単位のため、テストしやすい
1.3. 提供されているサービス機能の概要
- AWS Lambda
- メモリ量と使った時間で課金
- Azure Functions
- 課金もだいたいAWSと同じ
- Google Cloud Functions
- 課金も他とだいたい同じ
- 実行時間やメモリ量をユーザ側で調整可能
- IBM Cloud Functions
- 課金もだいたい同じだが、リクエスト回数ベースの課金
- 各社によって使える言語が違う
- 自社のプライベートクラウドでサーバレスを使いたい場合
- OpenWhisk
- OSSのサーバレスアーキテクチャ基盤
2. サーバレスアーキテクチャが実現するもの
2.1. ユースケース
- マイクロサービス
- 分割してサービスを作る 疎結合
- サーバレスをDR環境に使う。使われていない間は、課金されない
- シングルページアプリケーション
- APIバックエンド
- 単機能なサービスに向いている
- モバイルバックエンド
- データ処理
- 予測の立てづらいのに向いている
- コグニティブ
- チャットボットのバックエンド
- メッセージ駆動型
2.2. サンプルを紐解く
- サンプル(Lambda):connpassのAPIを使って、イベントのURLをslackに投稿する
- 追加ライブラリを使いたいときは、zipでまとめてアップロードする
- エントリポイントが定められている。名前を変更可能
- 環境変数を設定する場所がコンソールにあり、コードから環境変数を呼び出せる
2.3. 検討課題
- 常に起動しているサービスには向かない
- IaaSより高くなってしまう場合もある
- アプリケーションのパターン
- 一つの処理が長い場合向かない
- どこの機能をサーバレスにするか
- 部分的に機能を切り出す
- DDosでコストが跳ね上がる場合がある
2.4. エクササイズ
- チャットサービスをサーバレスに移行するなら
書籍
以下は発表の参考書籍です。
サーバレスシングルページアプリケーションは、読んだことあるので
マイクロサービスアーキテクチャを読んでみます。
感想
サーバレスの歴史から、具体的な検討課題やコードまで勉強することができました。
Lambdaしか使ったことなかったので、他社のFaasサービスについても聞けて興味深かったです。
今回初参加でしたが、eLVさんでは色々勉強会をやっているらしいので、他の勉強会も参加してみたいと思いました。