Your SlideShare is downloading. ×
AWS Lambda のご紹介 2015 JAWS沖縄
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

AWS Lambda のご紹介 2015 JAWS沖縄

0
views

Published on

AWS Lambda のご紹介 2015 JAWS沖縄

AWS Lambda のご紹介 2015 JAWS沖縄

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
0
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 知らなきゃ損する!? AWS  Lambdaの使い⽅方 アマゾン  データ  サービス  ジャパン  株式会社 パートナーソリューションアーキテクト 榎並利利晃
  • 2. ⾃自⼰己紹介 •  名前 –  榎並  利利晃(えなみ  としあき) –  toshiake@amazon.co.jp •  役割 –  パートナーソリューションアーキテクト –  主にエマージングパートナー様を担当 •  好きなAWSのサービス –  Amazon  Kinesis –  AWS  Lambda @ToshiakiEnami
  • 3. Lambda祭り勃発!
  • 4. AWS  Lambdaとは •  クラウド上で、イベントをトリガーに独⾃自のコード を稼働させるComputeサービス –  EC2インスタンスやOS等インフラの管理理作業が不不要 –  毎⽇日数件から毎秒数千件のリクエストまで⾃自動的にスケール –  従量量課⾦金金、実際にコードが稼働した時間に対してのお⽀支払 –  新たに追加された情報(イベント)に対して即座に応答するアプリ ケーションを、特別な仕組みなく簡単に実装できる
  • 5. 特徴
  • 6. インフラの管理理が不不要 •  ビジネスロジックにフォーカス できる •  コードをアップロードするだけ で、あとはAWS  Lambdaが以 下をハンドリング –  キャパシティ –  スケール –  デプロイ –  耐障害性 –  モニタリング –  ロギング –  セキュリティパッチの適⽤用
  • 7. オートスケール •  イベントのレートに合うように Lambdaが⾃自動でスケール •  プロビジョニング中や完了了を気にす る必要なし •  コードが稼働した分だけのお⽀支払い
  • 8. Bring  your  own  code •  Node.jsで書かれたコードを実⾏行行 •  コード内では以下も可能 –  スレッド/プロセスの⽣生成 –  バッチスクリプトや何らかの実⾏行行ファイルの 実⾏行行 –  /tmpのread/write •  各種ライブラリも利利⽤用可能 –  ネイティブライブラリも可能 –  利利⽤用するライブラリを⼀一緒にアップロード
  • 9. 多彩なイベント呼び出し •  Pull型 –  Amazon  Kinesis –  Amazon  DynamoDB  Streams •  Push型 –  Amazon  S3  Event  Notification –  Amazon  SNS –  Invoke  API(同期、⾮非同期)
  • 10. 細やかな料料⾦金金体系 •  100ミリ秒単位でのコンピュー ト時間に対する価格設定 •  リクエストに対する低額の課⾦金金 •  ⼗十分な無料料枠
  • 11. ユースケース
  • 12. イメージリサイズ、サムネイル⽣生成   •  S3に画像がアップロードされたときにサムネイ ルの⽣生成やリサイズを実⾏行行 AWS LambdaAmazon S3 Bucket イベント 元画像 サムネイル画像 1 2 3
  • 13. 値チェックや別テーブルへのコピー •  DynamoDBへの書き込みに応じて値チェックを しつつ別テーブルの更更新やプッシュ通知を実⾏行行 AWS Lambda Amazon DynamoDB Table and Stream プッシュ通知 別テーブルを更新
  • 14. 監査と通知 •  S3に保管されるCloudTrailのログを分析し、怪 しい⾏行行動や異異常を検知したら通知する AWS APIコール AWS CloudTrail Logs AWS Lambda Bucketイベント プッシュ通知
  • 15. ⼝口コミアプリ •  投稿の書き込み/表⽰示はDynamoDBと直接 •  レートの計算はモバイルアプリから直接Lambdaを実⾏行行し⾮非 同期で実⾏行行 1.  認証・認可 ・  FBアプリと連携 Cognito DynamoDBApp  with   AWS  Mobile   SDK 2.  ⼝口コミの投稿 ・  投稿内容とレーティング 4.  過去の全データを元に平均値の計算と     結果のDynamoDBへの登録等 3.  Lambda  functionの起動 Lambda
  • 16. Followers 写真共有モバイルアプリ 4.  メタデータをDynamoDBに登録 -‐‑‒  タイトル、コメント等 1.  認証・認可 ・  FBアプリと連携 6.  Push通知 -‐‑‒  フレンドやフォロワーに通知 Cognito Mobile  Analytics DynamoDB S3 SNS7.  画像をポストしたことをAnalyticsに登録 3.  画像のリサイズ 2.  S3への画像アップロード 5.  結果をSNSへ通知 App  with   AWS  Mobile   SDK
  • 17. IoT  BaaS   Event:     Arrived  Home   Command:     Lights  On  
  • 18. デモ
  • 19. イメージリサイズ、サムネイル⽣生成   AWS LambdaAmazon S3 Bucket イベント 元画像 サムネイル画像 1 2 3
  • 20. LambdaでCGI EC2無しで動的なサイト構築も!
  • 21. AWS上のシステムのインシデント管理理をkintoneで AWS  Lambdaアプリケーション サーバ CloudWatch   Logs Amazon  SNS トリガー検知によるワークフローの⾃自動起票!
  • 22. AWS  Lambdaの使い⽅方
  • 23. 画⾯面
  • 24. 画⾯面
  • 25. 画⾯面
  • 26. イベントソース •  イベントの発⽣生元となるAWSリソース •  現時点以下のAWSサービスをサポート –  Amazon  S3 –  Amazon  Kinesis –  Amazon  DynamoDB  Stream(Preview) –  Amazon  Cognito –  Amazon  SNS
  • 27. イベント例例(S3) { "Records": [       -- 省省略略 –       "s3": { "s3SchemaVersion": "1.0", "configurationId": "testConfigRule", "bucket": { "name": "sourcebucket", "ownerIdentity": { "principalId": "A3NL1KOZZKExample" }, "arn": "arn:aws:s3:::mybucket" }, "object": { "key": "sourcebucket/HappyFace.jpg", "size": 1024, "eTag": "d41d8cd98f00b204e9800998ecf8427e" } } } ] }
  • 28. イベント例例(Kinesis) { "Records": [ { "awsRegion": "us-east-1", "sequenceNumber": "196800000000000000000374", "partitionKey": "2efdb0ea22685b46993e42a67302a001", "eventSource": "aws:kinesis", "data": "SOME CUSTOM DATA 1" }, { "awsRegion": "us-east-1", "sequenceNumber": "196800000000000000000571", "partitionKey": "2efdb0ea22685b46993e42a67302a003", "eventSource": "aws:kinesis", "data": "{ "key": "value" }" } ] }
  • 29. ユーザアプリケーションからのInvoke •  AWS  SDKもしくはAWS  Mobile  SDKを利利⽤用 •  Invoke時にInvocation  Typeを指定する –  Event •  ⾮非同期実⾏行行 •  レスポンス内容はリクエストが正常に受け付けられたかどうかのみ –  RequestResponse •  同期実⾏行行 •  実⾏行行が完了了時にレスポンスが返ってくる。レスポンス内容は Lambdaファンクション内でセット可能
  • 30. モニタリング •  ダッシュボード –  全てのLambdaファンク ションのリスト –  可視化されたメトリクス •  CloudWatchを⽤用いた Metricsの監視 –  Invocations –  Errors –  Duration –  Throttle
  • 31. 制限事項 •  Lambdaファンクションのリソース リソース 制限 /tmpスペース 512MB ファイルディスクリプタ数 1024 プロセス数およびスレッド数(合計) 1024 同時リクエスト数(プレビュー期間中) 25リクエスト/秒 1リクエストあたりの実行時間(プレビュー期間中) 60秒 •  インプット インプット 制限 zipファイル(圧縮) 30MB zipファイル(無圧縮) 250MB InvokeAsyncのリクエストボディ(JSON) 128KB
  • 32. 料料⾦金金体系 •  リクエスト  (全リージョン) –  ⽉月間100万リクエストまでは無料料 –  超過分は$0.20/100万リクエスト (1リクエストあたり$0.0000002) •  実⾏行行時間  (全リージョン) –  100ms単位で課⾦金金 –  100ms以下は繰り上げで計算 –  メモリー容量量により単価および無 料料時間が異異なる Memory (MB) Price per 100ms ($) Free tier seconds per month 128 0.000000208" 3,200,000 192 0.000000313" 2,133,333 256 0.000000417" 1,600,000 320 0.000000521" 1,280,000 384 0.000000625" 1,066,667 448 0.000000729" 914,286 512 0.000000834" 800,000 576 0.000000938" 711,111 640 0.000001042" 640,000 704 0.000001146" 581,818 768 0.00000125" 533,333 832 0.000001354" 492,308 896 0.000001459" 457,143 960 0.000001563" 426,667 1024 0.000001667" 400,000
  • 33. 2Tier  Architecture
  • 34. 2-‐‑‒Tier  Architectureとは? •  いわゆるサーバレスな、クライアントとバックエンドだけのアーキ テクチャ –  AWS  SDKとマネージドサービスを積極的に利利⽤用 –  モバイルアプリやブラウザから直接AWSサービスを呼ぶ •  特にモバイルにおすすめ 直接呼び出し
  • 35. 2-‐‑‒Tier  Architectureのメリット •  アプリの開発に多くのメリット: –  バックエンド側の開発コストを最⼩小化 –  バックエンド側の運⽤用コストを最⼩小化 –  スケーラビリティの⼼心配なし –  バックエンドのEC2を減らせるため⾦金金額⾯面でもローコスト(当社⽐比*) •  必要に応じてEC2も導⼊入できる安⼼心感 –  後からバックエンド側にロジックを⼊入れてシステムの最適化ことも可能 •  よりビジネスに集中することが可能 *  EC2で同規模のサーバを⽴立立てる場合に⽐比べ
  • 36. まとめ
  • 37. 本⽇日のまとめ •  AWS  Lambdaは、インフラの管理理不不要で、⾃自分のコー ドを実⾏行行できるコンピュートサービス •  シンプルかつ可⽤用性の⾼高いアーキテクチャを構築する ことができる •  AWS  Lambda含め、AWSマネージドサービスをうまく 活⽤用する2Tier-‐‑‒Architectureでクラウドネイティブなシ ステムを構築
  • 38. ところで。。
  • 39. kintoneとAWSの素敵な関係
  • 40. kintoneとAWSは補完関係! •  ⼤大量量なコンピュートやスト レージが必要ところはAWS •  業務に近いところはkintone
  • 41. kintoneとAWSは補完関係! モバイル センサー 親機 ダッシュ ボードア プリ ワーク フロー 例例えば、IoTのシステムを構築する場合
  • 42. kintoneからの 定期データ取得 Amazon ML batch APIで予 測をクエリーする kintoneとAWSは補完関係! 予測データ セット 例例えば、Amazon  Machine  Learningを使ったデータ予測を⾏行行う場合
  • 43. IoTハッカソンやります!(5/9,  6/2) "   本戦出場チームにはインテル®  EdisonとGrove  Startkitを差し上げ ます §  DMM.makeも1ヶ⽉月無料料で使えます http://awshackathon2015.peatix.com/view 優勝賞品 Maker Faire Tokyo 2015インテルブー ス内で成果物を展⽰示できるスペースを 提供 AWS特別賞 AR.Drone 2.0 Day1にハッカソンを実施→アイディアソンの締切切は 4/28(⽕火)
  • 44. "   Web・モバイルのアプリ開発者向けイベント(AWS  Summitと併催) "   みんな⼤大好きGithubの共同創業者によるKeynoteあります " GithubとAmazonのサービス開発の裏裏側とかも聞けちゃいます "   Developers  Nightという交流流パーティもあります http://www.awssummit.tokyo/devcon.html 6⽉月2⽇日、3⽇日はデブコンへ! 有名⼈人、著名企業の登壇多数 株式会社トレタ 最⾼高技術責任者 増井雄⼀一郎郎⽒氏 Kaizen Platform,Inc 技術顧問 伊藤直也氏 クラウドワークス 執⾏行行役員  CTO ⼤大場  光⼀一郎郎⽒氏

×