Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Introducing Serverless Computing (20160802)

5,570 views

Published on

2016年8月2日に開催された実践SERVERLESSで話をした際の資料です。
ユースケース・事例がメインです。

Published in: Technology
  • Dating direct: ❶❶❶ http://bit.ly/39mQKz3 ❶❶❶
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Sex in your area is here: ❶❶❶ http://bit.ly/39mQKz3 ❶❶❶
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Introducing Serverless Computing (20160802)

  1. 1. Introducing Serverless Computing Keisuke Nishitani (@Keisuke69) Amazon Web Services Japan K.K. Aug 2, 2016
  2. 2. Profile Keisuke Nishitani Solutions Architect, Amazon Web Service Japan K.K @Keisuke69 Keisuke69 ✤ ソリューションアーキテクト ✤ クラウドを使ったアプリ開発とかモバイル開発の話しをよくします ✤ モバイルニンジャ1号機 ✤ RESTおじさん ✤ Lambda Wizards ✤ 餃⼦の王将エヴァンジェリスト(⾃称) ✤ ⾳楽が好きです、フジロッカーです、今年も⾏きます ✤ でもサマソニも毎年⾏きます ✤ ⼩説⼤好き、マンガ⼤好き、空想好き ✤ ブログ: http://keisuke69.hatenablog.jp/ Keisuke69 Keisuke69Keisuke69x
  3. 3. What is Serverless Computing?
  4. 4. AWSのComputeサービス Amazon EC2 Amazon ECS AWS Lambda スケールの単位 インスタンス アプリケーション ファンクション 抽象化 ハードウェア OS ランタイム 使いドコロ
  5. 5. AWSのComputeサービス Amazon EC2 Amazon ECS AWS Lambda スケールの単位 インスタンス アプリケーション ファンクション 抽象化 ハードウェア OS ランタイム 使いドコロ • OS、ネットワーク、 ストレージのレベルで 構成を制御したい • 好みのOSを利⽤した い • OS以上の全てを⾃分 でコントロールしたい • サーバを⾃分で構成し て実⾏したい • アプリケーションの構 成を制御したい • スケールを⾃分でコン トロールしたい • 必要なときだけコード の実⾏を⾏いたい • インフラの構成・管理 を⾏いたくない
  6. 6. AWSのComputeサービス Amazon EC2 Amazon ECS AWS Lambda スケールの単位 インスタンス アプリケーション ファンクション 抽象化 ハードウェア OS ランタイム 使いドコロ • OS、ネットワーク、 ストレージのレベルで 構成を制御したい • 好みのOSを利⽤した い • OS以上の全てを⾃分 でコントロールしたい • サーバを⾃分で構成し て実⾏したい • アプリケーションの構 成を制御したい • スケールを⾃分でコン トロールしたい • 必要なときだけコード の実⾏を⾏いたい • インフラの構成・管理 を⾏いたくない Serverless
  7. 7. AWS Lambdaのユースケース
  8. 8. Real-time File Processing ✤ イメージのサムネイル⽣成やビデオの変換 ✤ ドキュメントのメタデータをインデックス化 ✤ ログの処理 ✤ メディアコンテンツのバリデーション 元画像 サムネイル画 像 1 2 3 1.ファイルストレージを 提供するAmazon S3 2.処理ロジックを提供す るAWS Lambda
  9. 9. Real-time Stream Processing ✤ クライアントのアクティビティトラッキング ✤ クリックストリーム分析 ✤ メトリクス⽣成 ✤ データクレンジング ✤ ログフィルタリング ✤ インデクシング ✤ デバイスデータのテレメトリと測定 1. ストリームデータの保存を提供 するAmazon Kinesis 2. データ処理アプリケーションと してのAWS Lambda
  10. 10. Extract, Transform and Load ✤ データバリデーション ✤ バックアップ ✤ 分析 1. NoSQLデータストアを提供する Amazon DynamoDB 2. 変換およびロード処理を実⾏する Amazon Lambda 3. DWHを提供するAmazon Redshift
  11. 11. Serverless Web and Mobile Applications ✤ 静的コンテンツを提供するAmazon S3 ✤ 動的コンテンツを提供するAWS Lambda ✤ HTTPアクセスを提供するAmazon API Gateway ✤ NoSQLデータストレージを提供するAmazon DynamoDB AWS Lambdaの 動的コンテンツ Amazon DynamoDBに格納 されたデータ API Gateway Amazon S3の 静的コンテンツ ブラウザ
  12. 12. 新しいアプリケーションエコシステム: Alexaアプリ + Slack = Serveless bot! Alexa、"今からデモを 送る"をSlackで送信し て スケジュールされたポーリングにより メッセージを取得 Kevinから、 "成功を祈る!" (Slack APIを使って) メッセージをアップロード チーム (チャネルユーザー) Slack
  13. 13. Real-Time Message Handling New message published Amazon SNS AWS Lambda Amazon SNS Amazon Kinesis
  14. 14. Audit CloudTrail Activity AWS Lambda Amazon S3Amazon CloudTrail Amazon SNS AWS IAM
  15. 15. Automated Infrastructure Management AWS Lambda Amazon SNS Amazon CloudWatch Alarm ec2 runInstance ecs startTask beanstalk updateApp kinesis splitShard Any API call https://aws.amazon.com/blogs/compute/scaling-amazon-ecs-services-automatically-using-amazon-cloudwatch-and-aws-lambda/
  16. 16. Forward AWS Events to External Endpoints http://danilop.net/aws/2015/07/26/sns2ifttt/ | https://github.com/danilop/SNS2IFTTT AWS Lambda Amazon SNS IFTTT via the Maker channel Amazon CloudWatch Events Auto Scaling
  17. 17. Deploy Lambda Functions https://aws.amazon.com/blogs/compute/dynamic-github-actions-with-aws-lambda/ AWS Lambda Amazon SNS GitHub Repo lambda createFn ()
  18. 18. 事例
  19. 19. VidRoll 課題 • EC2の管理が難しくなりつ つあった • ITインフラではなくビジネ スへのフォーカスが必要 解決⽅法 • プレイヤーがAPI Gateway 経由でLambdaを実⾏ • 動画のリアルタイム変換に も利⽤ ベネフィット • ⽣産性が向上し、収益が10 倍になっても、エンジニア の追加なし
  20. 20. Legacy Architecture Limelight Edge Laptop Encoders RTMP Wowza Transmux Servers Wowza Transcode Servers Wowza Record Servers RTMP RTMP RTMP Auto Uploader MP4 HLS S3 VOD bucket CloudFront mobile client Live Streaming VOD CloudFront mobile client HLS HLS
  21. 21. Current Architecture Laptop Encoders HLS S3 Playback VOD Stream mobile client CloudFront Streaming Live stream mobile client CloudFront S3 Ingest 480p Transcode HQ Copy 360p Transcode Audio-only Transcode Thumbnail QOS Analytics Cascading Lambda Functions
  22. 22. easy ten Mobile app that helps you learn 10 new, foreign words a day Users have learned 170 000 000+ new words 1 200 000+ downloads • Featured in 85+ countries • Top 5 grossing apps overall (Russia) • Top 8 grossing apps overall (Brazil)
  23. 23. スクリーンショット
  24. 24. これまでのアプローチ ✤ モノリシックなアプリを複数のEC2インスタンス 上で稼働 ✤ 複雑なデプロイ。⼀⾏の変更でも全体の再デプロ イが必要 ✤ スケーラビリティ/俊敏性と新機能のバランスを取 る必要があり頻繁なリリースが できない
  25. 25. Lambda consumer S3 Mobile Analytics DynamoDB SQS Amazon EMR Amazon Cognito Amazon Kinesis Mobile app Amazon Redshift Lambda interface S3 dump DynamoDB log Microservice Core
  26. 26. ⽇本のお客様も
  27. 27. オフィスアワーやります ✤ 8⽉19⽇(⾦)にオフィスアワー(個別技術相談会)を開催します ✤ Serverlessなシステムに関するアーキテクチャ相談 ✤ 1スロット、45分で7スロット受け付け予定 ✤ 要事前登録 ✤ もちろん無料 ✤ 告知サイトならびに登録ページは近⽇公開!

×