SlideShare a Scribd company logo
1 of 146
Download to read offline
Keisuke Nishitani
Solutions Architect
Amazon Web Services Japan K.K.
Scale Your Business without Servers
⾃自⼰己紹介
{
"Name"  :  "⻄西⾕谷圭介",
"Twitter"  :  "@Keisuke69",
"Profile"  :  {
"Role"  :  "Solutions  Architect",
"Customers":  [  
"Web  Services",  
"Start-‐‑‒up”
],
"Services"  :  [  
"Amazon  API  Gateway”,
"AWS  Lambda",
"All  Mobile  Services”
]
}
}
Photo credit: CollegeDegrees360 via Visual Hunt / CC BY-SA
アプリケーション開発における課題
⼤大きく
Photo credit: donnierayjones via VisualHunt / CC BY
2つ
必要だが⾯面倒
なことや様々
な課題にどう
対処するか
どうやって差別化するか
クラウドファーストから
クラウドネイティブへ
クラウドネイティブとは
v クラウドで提供されるサービス利利⽤用を前提に構築するシ
ステムおよびアプリケーション
v 仮想サーバ上で1から全てを作り込むのではなく効率率率的
にアプリケーションを実装
v ビジネスの差別化ポイントへの集中
v 究極的にはビジネスに直結するアプリケーションの開発、管理理
のみを⽬目指す
アプリ開発、とくに差別化のため
の開発に集中できる
クラウドをフル活⽤用した
アーキテクチャ
従来の⼀一般的なWebアーキテクチャ
Web/APサーバをEC2で構築
ELBを配置し、スケーラブルな構成に
Webサーバは冗⻑⾧長化
DBはRDSによるMulti AZ構成、もしくはEC2上で構築
EC2等のインフラは常時稼働
• オートスケーリングするとしても最低限必要な分は
常時起動
【課題】
インフラ構築
インフラの運⽤用管理理
• キャパシティ
• スケール
• デプロイ
• 耐障害性
• モニタリング
• ロギング
• セキュリティパッチの適⽤用
ビジネスの差別化には直接繋がらない機能のアプリ実装
• 認証
• スロットリング
• スケーラビリティの確保
etc
Web
DB
LB
API Gateway + Lambdaが実現する
サーバレスアーキテクチャ
Lambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
API Gateway + Lambdaが実現する
サーバレスアーキテクチャ
JavaScript/ネイティブアプリによるUI実装
Lambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
API Gateway + Lambdaが実現する
サーバレスアーキテクチャ
JavaScript/ネイティブアプリによるUI実装
JavaScriptおよび静的コンテンツはS3に保存して配
信
• CloudFront経由の配信
Lambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
API Gateway + Lambdaが実現する
サーバレスアーキテクチャ
JavaScript/ネイティブアプリによるUI実装
JavaScriptおよび静的コンテンツはS3に保存して配
信
• CloudFront経由の配信
ロジックはAPI化
• API Gatewayを利利⽤用
• バックエンドとしてLambdaを利利⽤用
Lambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
API Gateway + Lambdaが実現する
サーバレスアーキテクチャ
JavaScript/ネイティブアプリによるUI実装
JavaScriptおよび静的コンテンツはS3に保存して配
信
• CloudFront経由の配信
ロジックはAPI化
• API Gatewayを利利⽤用
• バックエンドとしてLambdaを利利⽤用
JavaScript/iOS・AndroidはAPIを呼び出し
• Viewの構築は各クライアント上で⾏行行うLambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
API Gateway + Lambdaが実現する
サーバレスアーキテクチャ
JavaScript/ネイティブアプリによるUI実装
JavaScriptおよび静的コンテンツはS3に保存して配
信
• CloudFront経由の配信
ロジックはAPI化
• API Gatewayを利利⽤用
• バックエンドとしてLambdaを利利⽤用
JavaScript/iOS・AndroidはAPIを呼び出し
• Viewの構築は各クライアント上で⾏行行う
Lambdaファンクションから各AWSサービスを利利⽤用
Lambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
API Gateway + Lambdaが実現する
サーバレスアーキテクチャ
JavaScript/ネイティブアプリによるUI実装
JavaScriptおよび静的コンテンツはS3に保存して配
信
• CloudFront経由の配信
ロジックはAPI化
• API Gatewayを利利⽤用
• バックエンドとしてLambdaを利利⽤用
JavaScript/iOS・AndroidはAPIを呼び出し
• Viewの構築は各クライアント上で⾏行行う
Lambdaファンクションから各AWSサービスを利利⽤用
API GW/LambdaともにEC2を利利⽤用した
システムへのアクセスも当然可能
Lambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
サーバレスアーキテクチャ(2-Tier Architecture)
v 各クライアント向けSDKか
らの直接操作
v AWSアクセスに必要な
CredentialはCognitoを利利
⽤用してセキュアに取得
モバイルからダイレクトにAWSサービスを利利⽤用するアーキテクチャ
Android/iOS
SDK
JavaScript
SDK
DynamoDB SNS S3 LambdaCognito
Credential
の取得
直接操作
サーバレスアーキテクチャ
JavaScript/ネイティブアプリによるUI実装
JavaScriptおよび静的コンテンツはS3に保存して配
信
• CloudFront経由の配信
ロジックはAPI化
• API Gatewayを利利⽤用
• バックエンドとしてLambdaを利利⽤用
JavaScript/iOS・AndroidはAPIを呼び出し
• Viewの構築は各クライアント上で⾏行行う
Lambdaファンクションから各AWSサービスを利利⽤用
API GW/LambdaともにEC2を利利⽤用した
システムへのアクセスも当然可能
Lambda
API  Gateway
AWSサービス
クラウドサービスを活⽤用することでサーバ(EC2)を利利⽤用せずに構成するアーキテクチャ
S3
CloudFront
解決される課題
不不要(各サービスが適切切にハンドリング)
不不要
インフラ構築 →  不不要
インフラの運⽤用管理理
• キャパシティ
• スケール
• デプロイ
• 耐障害性
• モニタリング
• ロギング
• セキュリティパッチの適⽤用
ビジネスの差別化には直接繋がらない機能のアプリ実装
• 認証
• スロットリング
• スケーラビリティの確保
サーバレスで
全部できます
サーバレスで
全部できます
やりたいこと
だけに集中できる
サーバレスで
全部できます
ビジネスロジック
だけに集中できる
サーバレスアーキテクチャのメリット
アプリの開発に多くのメリット
• バックエンド側のコードが減るため開発コストを最⼩小化
• バックエンド側のサーバが減るため運⽤用コストを最⼩小化
• AWSによってマネージされるため、スケーラビリティやキャパシティ、セキュ
リティの⼼心配不不要
• ⾮非常にコスト効率率率化が⾼高いため、多くの場合コスト減が⾒見見込める
必要に応じてEC2も導⼊入できる安⼼心感
• 汎⽤用的なサービスでは実現の難しい、ビジネス固有の要件に関してはEC2を利利
⽤用して実装
• EC2を利利⽤用する部分についてもCodeDeployやElastic Beanstalk、OpsWorks等で
⾃自動化
開発者がビジネスにフォーカスできる
「何をするか」
を書くだけでいい
「何をするか」
を書くだけでいい
All you need is code.
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
ID  プロバイダ
ゲストアクセス
独⾃自認証システム
ユニーク ID
Joe Anna Bob
デバイス
プラットフォーム
AWS  サービス
複数の ID  プロバイダをサポート
ID  プロバイダと簡単に連携して認証
Amazon,  Facebook,  Twitter,  Google,  
OpenID Connect などに対応
ユニークなアイデンティティ
認証済ユーザに対してユニークIDを割り当て、
デバイスやプラットフォームをまたがって認
識識と管理理
Amazon Cognito Identity
Mobile
Analytics
S3 DynamoDB Kinesis
容易易なセキュリティのベストプラク
ティス実装
モバイルデバイスからAWSリソースへのセ
キュアなアクセスのためのやり取りをIAMと
連携して簡略略化
Amazon Cognitoの認証フロー
Amazon Cognito ID
(Temp Credentials)
Amazon
DynamoDB
End Users
Developer
App with
AWS Mobile
SDK
Access
to AWS
Services
Amazon Cognito
Identity Broker
User Name
Password
Amazon Cognito ID,
Temp Credentials
Amazon S3
Amazon Mobile
Analytics
Amazon Cognito
Sync Store
AWS
Management
Console
Token
Pool ID
Role ARNs
User Authentication
System
(Running on AWS or not)
Token
(参考)OpenID Connect
v 2014年年2⽉月に最終承認されたID連携に関する仕様
v 準拠しているIDプロバイダをCognitoでも利利⽤用可能
例例:Salesforce, Ping Identity, Google etc…
Developer Authenticated Identities
Username
And	
  Password
独⾃自認証システム
パブリックIDプロバイダの併⽤用
CognitoのIDを元にパブリックなIDプロバイ
ダと独⾃自認証を併⽤用して管理理することも可能
認証基盤の実装が必要
GetOpenIdTokenForDeveloperIdentity() を実
装する
既存の認証基盤を使う場合、改修が必要
独⾃自認証システムの利利⽤用
パブリックなIDプロバイダではなく独⾃自の
UsernameとPasswordを使って認証
Amazon Cognitoの認証フロー
(Developer Authenticated Identities)
Amazon Cognito ID
(Temp Credentials)
Amazon
DynamoDB
End Users
Developer
App with
AWS Mobile
SDK
Access
to AWS
Services
Amazon Cognito
Identity Broker
Get OpenID Token
User Name
Password
Amazon Cognito ID,
Temp Credentials
Amazon S3
Amazon Mobile
Analytics
Amazon Cognito
Sync Store
AWS
Management
Console
OIDC Token
Pool ID
Role ARNs
独⾃自認証システム
(AWS上で稼働していなくてもOK)
OIDC Token
OIDC Token
未認証ユーザのゲストアクセス
(Unauthenticated Identities)
IDプロバイダで認証をしていないユーザをゲス
トユーザとしてユニークIDの付与と管理理
• 未認証の場合、IDはデバイスと紐紐づく
• 未認証によるアクセスを許可しない設定も可能
アプリやAWSリソースへのアクセスにアカウン
トの作成や認証が不不要
• アクセス権限は未認証ユーザに対して割り当て
たIAM Roleのポリシーに基づく
• センサーデバイス等のスクリーンや⼊入⼒力力装置の
ないデバイスに対してもユニークIDの付与と管
理理が可能
データはクラウド上に保存され後からログイン
した場合は⾃自動でマージ
Visitor
Preferences
Cognito
Store
Guest
EC2 S3 DynamoDB Kinesis
WebとMobileをまたがったユーザの識識別
ユーザ状態の遷移
当初はゲストユーザとして
ユーザ状態の遷移
その後、アカウント登録
• シームレスに遷移
ユーザ状態の遷移
複数のアカウントをリンク
• ⼀一貫性のあるアイデンティ
ティ管理理が必要
コード例例(Android)
//  Credential  Providerの初期化
CognitoCachingCredentialsProvider credentialsProvider =  new  CognitoCachingCredentialsProvider(
getApplicationContext(),
”ap-‐‑‒northeast-‐‑‒1:XXXXXXXX-‐‑‒XXXX-‐‑‒XXXX-‐‑‒XXXX-‐‑‒XXXXXXXX",  //  Identity  Pool  ID
Regions.AP_̲NORTHEAST_̲1  //  Region
);
//  Facebookユーザで認証する場合
Map  logins  =  new  HashMap();
logins.put("graph.facebook.com",  Session.getActiveSession().getAccessToken());  
credentialsProvider.setLogins(logins);
//AWSサービスへのアクセス
AmazonDynamoDB client = new AmazonDynamoDBClient(credentialsProvider);
//Congito IDの取得
String identityId = credentialsProvider.getIdentityId();
※上記例例では省省略略していますが、事前にIDプロバイダを利利⽤用した認証処理理の実装が必要です
※実際にはLoaderやAsyncTask等を⽤用いた⾮非同期タスクとして実装すること
コード例例(JavaScript)
// 以下ではFacebookユーザを認証済ユーザとして使用
AWS.config.region = ‘ap-northeast-1’; // リージョンの指定(必須)
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: ’ ap-northeast-1:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX’,
Logins: {
graph.facebook.com : facebookResponse.authResponse.accessToken
}
});
// Cognitoから付与されたIDの取得
AWS.config.credentials.get(function(err) {
if (!err) {
console.log("Cognito Identity Id: " +
AWS.config.credentials.identityId);
}
});
(参考)IAM Role⽤用のアクセスポリシーの作成
{
"Effect":"Allow",
"Action":["s3:*"],
"Resource":"*"
}
{
"Effect": ”Deny",
"Action": ["dynamodb:*"],
"Resource": "*"
}
{
"Effect": "Allow",
"Action": [”cognito-sync:*"],
"Resource": "*"
}
Allow
Actions:
All S3, Sync store
Operations
Resource:
All resources within
these services
Deny
Actions:
All DDB Operations
Resource:
All resources
SDKを使う際の認証情報の扱い
v AWSの各種サービスはあくまでバックエンド
v エンドユーザは必ずしもAWSユーザではない
v アプリは開発者のアカウントで認証・認可を受ける必要がある
v アプリに開発者アカウントのアクセスキー等を埋め込んだら
v アクセスキーが広範にばら撒かれることに
v アクセスキーの不不正利利⽤用を⽌止めるためにキーを無効化したら
→ 全ユーザへのサービスが停⽌止!!
v アクセスキーの定期的な更更新で対処するにしても
v 更更新のたびにバージョンアップは⾮非現実的
v 更更新前のアプリからはサービス利利⽤用不不可に
セキュアなAWSアクセスを提供するには
アプリに認証情報を埋め込むべきではない
• アクセスキーが広範囲に配布されてしまう
• アクセスキーの更更新はアプリのアップデートを伴うため⾮非現実的
エンドユーザ/端末ごとに異異なる認証情報を提供すべき
• ユーザごとに必要最⼩小限の権限を与えるのは重要
• 不不正利利⽤用発覚時に不不正ユーザのみ権限を停⽌止
認証情報は期限が来たら無効化されるべき
• 不不正ユーザの影響も期限付きに
Amazon Cognitoのセキュリティ
細やかなアクセス制御
IAM  との連携で AWS  リソースへの細かなアクセ
ス制御を実現
AWS  Credentials の保護
必要な権限だけを付与された⼀一時的なクレデンシャル
を取得できるので、アプリにクレデンシャルを埋め込
まなくてよい
セキュリティのベストプラクティスを⽀支援
セキュリティトークンサービスと連携したり、トー
クンベンディングマシンを構築する必要はない
セキュアに AWS  サービスを利利⽤用
EC2 S3 DynamoDB Kinesis
S3
DynamoDB
Get Delete Put
Concrete Software
Concrete Software has been making hit mobile games
like Jellyflop and PBA Bowling Challenge since 2003.
Amazon Cognitoによって、迅速
なゲーム開発が可能となり、ユー
ザに素晴らしいエクスペリエンス
提供も可能となりました
Keith A. Pichelman
CEO, Concrete Software
”
“ • クロスデバイス、クロスプラットフォームで
シームレスなユーザ体験の提供
• クラウドへゲームの状態を保存し、サーバレ
スでクロスデバイスに同期を実施
チャレンジ
解決策
• CognitoによりAWSリソースへのセキュアな
アクセスが可能に
• Cognito Syncはいかなるサーバサイドのイ
ンフラも必要とせずにクラウドへのデータ保
存に対する柔軟性を提供してくれ、デバイス
上でのキャッシュを実現
akippa株式会社
v 「個⼈人が所有する空きスペース」や「未契約で空いて
いる⽉月極の駐⾞車車場」を、1 ⽇日単位で予約が出来る駐
⾞車車場として活⽤用出来るサービス
v Infinity  Ventures  Summit  2014  Kyoto  での
Launchpad  優勝をきっかけに急成⻑⾧長中
v コーポレートサイトにおける問合せフォームを
CognitoとS3を利利⽤用して実装
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
Amazon Mobile Analytics
v 利利⽤用状況に関するデータを⼤大規模に収集、⾃自動的に可視化
v アプリケーション側はAmazon Mobile SDKを組み込むだけ
v ⽣生データをS3/Redshiftへ⾃自動エクスポート可能
v 既存のユーザマスタの突き合わせ等によるより深い分析が可能
v CSVでのダウンロードも可能
v ⾼高速かつスケーラブル
v データを受け取ったら60分以内にレポート反映
v 数百万のユーザーからの数⼗十億イベント/⽇日を収集・処理理可能
v クロスプラットフォーム
v 各種デバイス、OS(Android, iOS, FireOS)からデータを送信可能
v AWS SDK for JavaScriptでもサポート
ビジネス上重要な指標
1. Monthly Active Users
(MAU)
2. Daily Active Users
(DAU)
3. New Users,
4. Daily Sessions,
5. Sticky Factor,
6. 1-Day Retention,
7. Avg. Revenue per DAU,
8. Daily Paying Users,
9. Avg. Paying DAU
継続率率率のトラッキング
ユーザの継続率率率はマーケティ
ング、新機能、UI変更更やアプ
リ更更新の効果を測る際の重要
な指標
⽇日次/週次でユーザ再訪率率率に
関する4つのチャートを提供
アプリ固有のアクションに関して⾏行行動分析
が可能
特定イベントの発⽣生頻度度に関するレポート
を提供。各イベントに属性やメトリックを
追加可能。
サンプル
Track the number of
Likes/Shares,per
article, in a news app
Understand player
abort rates per
level,in a game
Number of songs
played,per user
session,in a music
app
In-app item popularity
in a shopping app
カスタムイベントのトラッキング
S3へとデータをエクスポートし、データ処理理
Mobile Amazon  
S3
Amazon  
Redshift
Amazon  Mobile  
Analytics
Hadoop/Spark
Amazon  EMR
Amazon  
Glacier
アーカイブ
バッチ処理理に
よるレポート
⾃自動でエクスポート
Mobile Analyticsのスキーマ
• シンプル
• 共通項⽬目は⾃自動収集
• 項⽬目とメトリクスを
拡張可能
event_timestamp arrival_timestamp
event_type app_id
app_title cognito_id
client_id platform
platform_version locale
app_package_name app_version_name
device model device make
monetization_amount monetization_item
a_level
a_promo_code
m_score
m_quantity
Forza Football
60
スコア速報 投票プッシュ通知
PENETRATION
61
users per capita
LEVERAGEON MISSION
62
VOTE per country
DEVICES
63
in forza football
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
Amazon Cognito Sync クラウドへのデータ保存と同期
アプリのデータ、設定、状態などを保存
アプリやデバイスのデータをクラウドに保存でき、
ログイン後にマージされる
クロスデバイス、クロスプラットフォー
ムで同期
ユーサデータや設定をデバイスをまたいで同期
バックエンド不不要
スケーラブルで信頼性の⾼高いデータ同期基盤を簡
単に利利⽤用可能
User Data
Storage and
Sync
Any Platform
iOS/Android/FireOS
k/v data
Identity pool
SDK
ローカルデータストア
オフライン動作
データはまずローカルのデータストレージに保存されるので、
電波が不不安定もしくは不不通であってもシームレスに動作できる
インテリジェントな同期処理理
同期メソッドはローカルとクラウドのデータのバージョンを⽐比
較して、データをプッシュ/プル
柔軟なコンフリクトの解決
同期メソッドは、変更更を読み取り後、ローカルの変更更をクラウ
ドのデータストアへ書き込む。デフォルトでは、最後の書き込
みを有効として保存する。開発者はコンフリクト処理理を独⾃自に
上書きして実装することもできる。
Amazon Cognito Sync クラウドへのデータ保存と同期
Cognito Sync データモデル 例例
User情報
Dataset
ゲームとユーティリ
ティ、2種類アプリを
提供
Game情報
Dataset
Identitypool1
ユーティリティ
App
Game
App
AWS
Account
Dataset
Identity
Identity
Identity
Dataset
Dataset
Identity
Pool
1:60
1:n
1:20
DatasetDataset
Record
1:1024
You
Your App
Your App Users
User Data
Container
User Data
コード例例(Android)
// Cognito Sync client の初期化
CognitoSyncManager syncClient = new CognitoSyncManager(
getApplicationContext(),
Regions.AP_NORTHEAST_1, // Region
credentialsProvider);
//Datasetをオープンし、レコードを追加
Dataset dataset = syncClient.openOrCreateDataset("myDataset");
dataset.put("myKey", "myValue");
//同期処理理の実⾏行行
dataset.synchronize(new DefaultSyncCallback() {
@Override
public void onSuccess(Dataset dataset, List newRecords) {
//Your handler code here
}
});
コード例例(JavaScript)
// Cognito Sync clientの初期化
AWS.config.credentials.get(function(){
var syncClient = new AWS.CognitoSyncManager();
syncClient.openOrCreateDataset('myDataset', function(err,
dataset) {
dataset.put('myKey', 'myValue', function(err, record){
dataset.synchronize({
onSuccess: function(data, newRecords) {
// ハンドラを実装
}
});
});
});
});
モバイルアプリ
(デバイス1)
Mobile  SDK
Amazon  Cognito
Sync  Store
1.  データ同期
モバイルアプリ
(デバイス2)
Mobile  SDK
Amazon  SNS
Mobile  Push
2.  プッシュ通知
3.  データ同期
Amazon  SNS  Mobile  Push  との連携
Amazon  Cognito  がデータストアが更更新されたタイミングで、Amazon  SNS  Mobile  
Push  と連携して、各デバイスにプッシュ通知を送信できる。
プッシュ通知を受け取ったアプリはデータストアの再同期を⾏行行うように実装するなど。
Amazon Cognito Push Sync
Amazon  Kinesis  との連携
Amazon  Cognito のデータストアが更更新されたタイミングで、Amazon  Kinesis  スト
リームで更更新や同期のデータを受け取ることができる。
モバイルアプリ
Mobile  SDK
Amazon  Cognito
Sync  Store
1.  データ同期
Amazon  Kinesis
2.  Stream
Content
ストリームの内容
3.  例例えば
Amazon  Redshift
{
"identityPoolId" : "Pool Id”
"identityId" : "Identity Id ”
"dataSetName" : "Dataset Name”
"operation" : "(replace|remove)”
"kinesisSyncRecords" : [
{
"key" : "Key",
"value" : "Value",
"syncCount" : 1,
"lastModifiedDate" : 1424801824343,
"deviceLastModifiedDate" : 1424801824343,
"op": "(replace|remove)" }, ...
],
"lastModifiedDate": 1424801824343,
"kinesisSyncRecordsURL": "S3Url",
"payloadType" : "(S3Url|Inline)",
"syncCount" : 1
}
Amazon Cognito Stream
モバイルアプリ
Mobile  SDK Amazon  Cognito
Sync  Store
1.  データ同期
AWS  Lambda
2.  Sync  Trigger
Amazon  Lambda  との連携
3.  何か処理理
Amazon Cognito Events
Key Value
住所 東京都□渋⾕谷区□松濤□1丁⽬目
Key Value
住所 東京都渋⾕谷区松濤1丁⽬目
元データ
修正済みデータ
空⽩白を削除
するプログラム
Lambda  Function
(Node.js)
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
Joe Anna Bob
High Scores
Joe 1500
Anna 800
Bob 750
Amazon DynamoDB
No  SQL  データベース
⾼高い信頼性、スケーラビリティ、低レイテ
ンシで安定した性能を兼ね備えた NoSQL
データベースサービス
DynamoDB Connector
• Object  Mapper
• アプリ側のクラスが Amazon  
DynamoDB テーブルにマッピング
• オブジェクトをテーブルに変換する
ことも、その逆も必要ない
Id isbn Title hardCover
1 22-22222 My First Book Yes
2 43-43234 My Favorite Book No
3 55-12345 My New Book Yes
Table: Bookstore
コード例例(Android)
@DynamoDBTable(tableName = "Bookstore")
public static class Book {
private int id;
private String isbn, title;
private Boolean hardCover;
@DynamoDBHashKey(attributeName = "id")
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@DynamoDBAttribute(attributeName="isbn")
public String getIsbn() {
return isbn;
}
...
}
コード例例(Android)
// Build a book object
Book book = new Book();
book.setId(17);
book.setIsbn("222-2222222222");
book.setTitle("Some Title");
book.setHardCover(true);
// Save book object to dynmaoDB
mapper.save(book);
// Update item and save object again
book.setTitle("Updated Title");
book.setHardCover(false);
mapper.save(book);
// Load another book
Book anotherBook = mapper.load(Book.class,7);
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
Amazon Kinesis
データのストリーミング処理理のためのマネージドサービス
Data  
Sources AWS  Endpoint
App.1
[Aggregat
e  &  De-‐‑‒
Duplicate]
Data  
Sources
Data  
Sources
S3
Redshift
App.3
[Sliding  
Window  
Analysis]
Availability  
Zone
Shard  1
Shard  2
Shard  N
Availability  
Zone
Availability  
Zone
Amazon  Kinesis
データ
INPUT
データ
OUTPUT
各種処理理データ保持
低レイテンシー
⾼高信頼性
(3AZ,  24h)
容易易な
インテグレーション
Pluggable
アーキテクチャ
Amazon Kinesis 基本構成パターン
v 出来る限り最⼩小単位のサービスで構成
v データ処理理をAWS  Lambda、もしくはAmazon  EC2上で実
⾏行行する
v Kinesis  Client  Libraryを使うことで容易易にアプリ開発を実現
アプリ2
Dashboardアプリ1
(KCL)
Redshift
DynamoDB
Data  
Sources
Data  
Sources
Data  
Sources
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
ケース4画像や⾳音楽をアップロード/ダウンロードしたいAmazon S3
リージョン
3か所以上で
⾃自動複製
データセンターA
データセンターB
データセンターC
Joe Anna Bob
オンラインストレージ
安全で耐久性があり拡張性の⾼高い容量量無制限の
マネージドオンラインストレージサービス
S3  Connector:  Transfer  Manager
• マルチパートアップロード対応
• フォールトトレラントなダウンロード
• バックエンドサーバー不不要
• ⾃自動リトライ
• モバイルアプリ/ネットワークに最適化するための
ポーズ、レジューム、キャンセル関数
コード例例(Android)
// Creating the transfer manager
TransferManager = new TransferManager(credentialProvider);
// Upload image
Upload upload = transferManager.upload(BUCKET_NAME, fileName, file);
// Download image
Download download = transferManager.download(BUCKET_NAME, mKey, file);
// Pause, and Resume
try {
PersistableDownload = download.pause();
//do something if we didn’t abort
} catch(PauseException e) {
//do something if we aborted
}
download = transferManager.resumeDownload(persistableDownload);
コード例例(iOS)
// Creating the transfer manager
self.transferManager = [S3TransferManager new];
self.transferManager.s3 = s3client;
// Upload image
[self.transferManager uploadFile:fileName bucket:bucketName
key:objectName];
// Download image
[self.transferManager downloadFile:fileName bucket:bucketName
key:objectName];
// Pause, Resume, Cancel
[self.transferManager pauseAllTransfers];
[self.transferManager resumeAllTransfers];
[self.transferManager cancelAllTransfers];
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
Amazon S3 / Amazon CloudFront
Webサイトホスティング機能(Amazon S3)
静的なWebサイトをS3のみで配信可能
任意のドメインへのリダイレクトも
独⾃自ドメイン利利⽤用可能
Amazon CloudFront
マネージドCDN
世界53箇所のエッジロケーション
ストリーミング配信も対応
クライアント
レスポンス向上 負荷軽減
Amazon
CloudFront
キャッシュ
配信 オフロード
Webサーバ
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
Lambdaファンクション: ステートレス、トリガーベースのコード実⾏行行
AWS Lambda
あらゆるスケールで⾼高性能
費⽤用対効果が⾼高く効率率率的
インフラ管理理不不要
使った分だけの⽀支払い
リクエスト量量に応じて⾃自動的に
キャパシティ調整
100ms単位のコンピュート課⾦金金
⾃自⾝身のコードを持ち込み
標準的な⾔言語でコードを実⾏行行
スレッド、プロセス、ファイル
やシェルスクリプトも利利⽤用可能
インフラではなくビジネスロジック
に集中可能
コードをアップロードするだけで、
Lambdaが全てをハンドリング
AWS Lambda
インフラを⼀一切切気にすることなくアプリケーションコード
を実⾏行行できるコンピュートサービス
• 実⾏行行基盤は全てAWSが管理理
• AWSサービスと連携させることで簡単にイベントドリブンなア
プリケーションを実装可能
• コード実⾏行行時間に対しての課⾦金金でありコスト効率率率が⾮非常に⾼高い
• VPC内のリソースへのアクセスも近⽇日サポート
Lambda function
• JavaScript(Node.js)およびJava、Pythonで記述
• サードパーティライブラリも利利⽤用可能
AWS Lambdaの利利⽤用例例
S3に画像がアップロードされたときにサムネイルの⽣生成や
リサイズを実⾏行行
AWS  LambdaAmazon  S3  Bucket  イベント
元画像 サムネイル画
像
1
2
3
イベントソース
現時点では以下のAWSサービスをサポート
• Amazon S3
• Amazon Kinesis
• Amazon DynamoDB Streams(Preview)
• Amazon Cognito
• Amazon SNS
• Alexa AppKit
• Amazon SWF
• Amazon SES inbound mail
• Amazon CloudWatch Logs
• Amazon Connected Home (Preview)
• AWS IoT
株式会社リブセンス
成功報酬型アルバイト求⼈人サイト
ジョブセンス
転職クチコミサイト
転職会議
画像配信
サーバ
各種DB
処理理A 処理理B 処理理C
各物件情報
提供元
これまでの構成
画像配信
サーバ
各種DB
処理理A 処理理B 処理理C
各物件情報
提供元
これまでの構成
各社違うフォーマット
終わらない前段ジョブ
サーバのお守り
ロード時間の拡⼤大
前段ジョブに依存した
処理理内容
画像配信
サーバ
各種DB
処理理A 処理理B 処理理C
各物件情報
提供元
これまでの構成
各社違うフォーマット
終わらない前段ジョブ
サーバのお守り
ロード時間の拡⼤大
前段ジョブに依存した
処理理内容
• 各社のフォーマットを扱うことによる『違いの吸収層』の
複雑化
• ジョブが段階を持っているのでスケールさせにくい
• 前段ジョブに依存した処理理機構のため、サービス改善が⼤大
変
• サーバメンテナンスの複雑化
• バッチによるサービス内容の劣劣化
各物件情報
提供元
連携サーバ
元データ
Lambda
処理理C
RDS
画像配信S3
CloudSearch
変換処理理A
PUT
処理理D変換処理理B
書き込み
処理理
API  Gateway
⼊入⼒力力層 サービス層 ストア層
Kinesis
新アーキテクチャ
各物件情報
提供元
連携サーバ
元データ
Lambda
処理理C
RDS
画像配信S3
CloudSearch
変換処理理A
PUT
処理理D変換処理理B
書き込み
処理理
API  Gateway
⼊入⼒力力層 サービス層 ストア層
Kinesis
新アーキテクチャ
• ステートレスの制約や簡易易に並列列化できるところから、
バッチ起因のサービス改善がやりやすい
• API GWを追加することで、バッチでは無い連携機能を追
加する標準化されたインターフェースを定義できる
• 個別の連携処理理・共通の処理理・ストア処理理、それぞれに
ついて簡単にスケールを適切切にできる
• リアルタイム処理理への移⾏行行が簡単
https://speakerdeck.com/takesinoda/kinesis-woshi-tutasutorimingunabatutishi-xing-ji-pan-falseshi-zhuang
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
Amazon API Gateway
複数バージョンや複数環境
へのデプロイを管理理
APIの定義とホスティング
クラウド上のリソースへのアクセ
ス認証におけるAWS IAMの活⽤用
AWSのAuthを活⽤用
バックエンド保護のため
のDDoS対策やリクエス
トのスロットリング
ネットワークトラフィックの管理理
Amazon API Gateway
複数バージョンとステージ
APIキーの作成と配布
リクエスト時におけるAWS  SigV4の利利⽤用
リクエストのスロットリングとモニタリング
バックエンドとしてAWS  Lambdaが利利⽤用可能
Amazon API Gateway
レスポンスをキャッシュ可能
CloudFrontを利利⽤用したレイテンシの軽減とDDoS対策
iOS、AndroidとJavaScript向けSDKの⾃自動⽣生成
Swaggerのサポート
Request  /  Responseにおけるデータ変換
(参考)Swaggerを利利⽤用したAPI定義
v Swaggerを利利⽤用してAPI設定を全て⾏行行うことが可能
v AWS固有のパラメータをサポートするextention
v Amazon API Gateway Swagger Importerを利利⽤用したAPI
定義の作成と更更新、デプロイ
Method Response
Integration Request
Method Request
Method
(参考)Swaggerを利利⽤用したAPI定義
/users:
post:
summary: Registers a new user
consumes:
- application/json
produces:
- application/json
parameters:
- name: NewUser
in: body
schema:
$ref: '#/definitions/User’
x-amazon-apigateway-integration:
type: aws
uri: arn:aws:apigateway:us-east-1:lambda:path/2015-03-31...
credentials: arn:aws:iam::964405213927:role/pet_store_lambda_invoke
...
responses:
200:
schema:
$ref: '#/definitions/RegisterUserResponse'
Managed
フルマネージドなサーバレスアーキテクチャ
InternetMobile apps
AWS Lambda
functions
AWS
API Gateway
cache
Endpoints on
Amazon EC2
Any other publicly
accessible endpoint
Amazon
CloudWatch
Amazon
CloudFront
API
Gateway
API Gateway
Other AWS
services
AWS Lambda
functions
VidRoll
課題
• EC2の管理理が難しくなりつ
つあった
• ITインフラではなくビジネ
スへのフォーカスが必要
解決⽅方法
• プレイヤーがAPI Gateway
経由でLambdaを実⾏行行
• 動画のリアルタイム変換に
も利利⽤用
ベネフィット
• ⽣生産性が向上し、収益が10
倍になっても、エンジニア
の追加なし
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
Amazon  SNS
Mobile  Push  
Internet
Apple  APNS
Google  GCM
Amazon  ADM
Windows  WNS  
and  MPNS
Baidu  CP
業界初!
Amazon SNS Mobile Push
世界中のユーザにクロスプラットフォームでプッシュ通知
個々の通知だけでなく多数の受信者への同報通知も可能
Android  Phones  and  Tablets
Apple   iPhones  and  iPads
Kindle  Fire  Devices
Android  Phones  and  Tablets   in  China
iOS
Windows   Desktop   and  Windows   Phone  Devices
Mobile Pushはユーザに対し、あ
る瞬間、⼀一緒に⽣生活することを可
能にした。 例例えば数マイル離離れて
いても
2010年年サンフランシスコ
で設⽴立立
親しい友⼈人や家族といっ
た⾝身近な⼈人向けにデザイ
ンされたソーシャル
2つのアプリ、3プラット
フォーム、20⾔言語
Path
⼀一夜にしてゼロから500
ミリオン/⽇日までの成⻑⾧長
⾼高い可⽤用性と信頼性、速度度
移⾏行行は簡単
10m
170m
500m
Day 1 Day 2 Day 3
Path Daily SNS Mobile
Push Deliveries
(millions)
…Rising
典型的なユースケース
ユーザ
ユーザ認証をしたい
適切切な権限を与えたい
⾏行行動分析をしたい
データ メディアファイル
画像/⾳音楽を保存したい
アセットを配信したい
ロジック
サーバサイドで処理理したい
独⾃自APIを⽤用意したい
メッセージ
プッシュ通知を送りたい
テスト
実機でテストしたい
<TEST/>
データの同期をしたい
データベースを使いたい
⼤大量量のデータを集めたい
Android、iOS、Fire  
OSアプリをアップ
ロードし、テスト内容
を設定して、デバイス
を選択する。
選択したデバイスを
またいで並列列にアプ
リをテストできる。
迅速かつ安全である。
バグ、パフォーマン
ス、その他の問題を、
数分のうちに詳細に
レポートする。
YOUR
APP +
AWS  Device  Farm
AWS  クラウドにホスティングされた数多くのスマートフォン、タブレット、その
他の 実デバイスで、迅速かつ安全に Android、iOS、Fire  OS  アプリをテストし
て品質を向上できる。
デバイス
•デバイスのプロファイルは、製造メーカー/型&モデル/OS バージョン/キャリア
の組み合わせである。
•AWS データセンターにホスティングされており、ユーザーの要求に応じてスケール
できる。
•⼗十分なキャパシティ(多くの同⼀一のデバイスプロファイル)を保有している。
•ルート権限では動作しない。
•市場情報に基づいてデバイスは⽤用意され、新しいデバイスが発売されたら追加される。
新しいデバイス
最新のデバイスセット
を利利⽤用できる
AWS  データセンター
複数のフレームワークをサポート
テストオートメーションフレームワーク
•Appium(JUnit, TestNG)
•Calabash
•Instrumentation(JUnit, Espresso, Robotium)
•uiautomator
ポイント
•プロジェクトごとに最適なソリューションを使ってテストを作れる。
•開発チームと QA チームで要件が異異なっても、ひとつの共通プラットフォームに統合できる。
•新しく出現してくるフレームワークもサポートされることで統合できる。
IHS Sphera® First Report™
• 安全上のインシデントやニアミスの情報をレポート
• オフライン利利⽤用可能
• カメラで撮影した画像の添付に対応
• Android/iOS
Development/testing process
Develop SCM
commit Automated
build
trigger Automated
UI test
(simulators)
always
Is
milestone
?
no
Beta deploy
to
manual testers
Automated
UI test
(Device Farm)
yes
Development/testing process
Develop SCM
commit Automated
build
trigger Automated
UI test
(simulators)
always
Is
milestone
?
no
Beta deploy
to
manual testers
Automated
UI test
(Device Farm)
yes
PMease QuickBuild
• Javaベースのクロスプラットフォームな⾃自動ビルドサーバ
• AndroidとiOS向けの⾃自動ビルド
• HockeyAppとTestFlightを通じたベータ配布
• シミュレータに対するAppium UI テストの実⾏行行
• マイルストーンビルドはAWS Device Farmへ送付
Development/testing process
Develop SCM
commit Automated
build
trigger Automated
UI test
(simulators)
always
Is
milestone
?
no
Beta deploy
to
manual testers
Automated
UI test
(Device Farm)
yes
Appium
• 各種⾔言語で書かれたテストを実⾏行行可能なフレームワーク
• Ex: Ruby, Python, Java, JavaScript, PHP, C#
• 各⾔言語のテストランナーを利利⽤用
• Ex: JUnit for Java, NUnit for C#
• 既存のネイティブアプリ向けUIテスト⾃自動化フレームワークを利利⽤用
• UIAutomation – iOS
• UIAutomator – Android
• テストのための特別なビルドが不不要であり、テストしたビルドをそのまま出せる
Development/testing process
Develop SCM
commit Automated
build
trigger Automated
UI test
(simulators)
always
Is
milestone
?
no
Beta deploy
to
manual testers
Automated
UI test
(Device Farm)
yes
HockeyApp
• Android、iOSとWindowsへのベータ配布
• iOS – プロビジョニングプロファイルが必要
TestFlight
• iOSへのベータ配布
Development/testing process
Develop SCM
commit Automated
build
trigger Automated
UI test
(simulators)
always
Is
milestone
?
no
Beta deploy
to
manual testers
Automated
UI test
(Device Farm)
yes
Etsy
Etsy
• iOS, Android向けに4つのアプリを提供
• アプリ開発の専任チームなし
• 2週間に⼀一度度のリリース
• 2⼈人のリリースマネージャと8⼈人のQA
スタッフ(Web+Mobile)
物理理デバイス上でのテスト
• AWS Device Farm
• テストジョブのスケジュール化とテスト結果収集のためにJenkins
pluginを使⽤用
• 30分毎にスケジュールされたテスト実⾏行行
• Espresso(Android)とKIF(iOS)を実⾏行行
• デバイス上でのパフォーマンスメトリクス収集⽤用にファンクショナ
ルテストを使⽤用
対象デバイスの選択
Google  Analyticsを利利⽤用してよく利利⽤用されるdevices、OS、
解像度度を確認
いろいろあってよくわからないというあなたへ
数多くのサービス
1. どのサービスを使うべきか? 2. どうやってそれらをつなぎ合わせるか?
Identity Provider SDKs
+
=
Example:
Login screen & integration code
+
SDK
AWS Mobile Hub (BETA)
AWS Mobile Hub (Beta)
1. 単一の統合されたコンソール
2. 事前に用意された機能群
3. サービスを自動でプロビジョニング
4. 自動生成されたアプリケーション
つまり、数分でAWS上にアプリを構築
AWS Mobile Hub (Beta)
プロジェクトの作成と機能の追加
ユーザがどのようにサインインするか設定:
• サインインなし、オプショナルもしくは必須
サインインプロバイダを設定:
• Facebook (Google, Twitter, Amazon etc)
• 独⾃自のシステム(認証基盤)
クイックスタート⽤用アプリにサインイン画⾯面
を追加
Powered by Amazon Cognito Identity
例例:User Sign-in(ユーザサインイン)
アプリへのプッシュ通知
• iOS/Android
• 1:1 もしくはトピック
Quickstart App demonstrates features
クイックスタートアプリでは以下の機能
をデモ
• 通知のEnable/Disable
• SNSを使ったトークンの⾃自動登録
• サブスクライブするトピックの選択
Powered by Amazon SNS
例例:Push通知
スターターアプリのダウンロード
AWS Mobile Hub(BETA)
•AWSを使ったモバイルアプリの開発を簡単に
• ユーザサインインといった典型的ユースケースごとの
スターターコードを提供
• 関連サービスの設定と構築を⾃自動で
• AWS Management Consoleから利利⽤用可能
• 現在はUS-East-1のみ、東京リージョンと
ダブリンは近くサポート予定
• AWS Mobile Hub⾃自体のご利利⽤用は無料料
※利利⽤用する各サービスの費⽤用はかかります
事例例
株式会社ガリバーインターナショナル
v 全国の営業担当者が利利⽤用する
iPad  による査定システムを刷
新
v 査定システムは当初EC2上に構
築されていたが、Amazon  
DynamoDB、AWS  Lambda、
Amazon  Cognito等を組み合わ
せたシステムに刷新
v 今後はAmazon  API  Gateway  
を活⽤用したAPI化も進めていく
予定
株式会社すかいらーく
v 中華レストラン「バーミヤ
ン」の公式アプリ
v iOS / Android
v 会員登録なし
v クーポン配信
v 店舗検索索
v クラスメソッド株式会社に
よる開発
株式会社すかいらーく
株式会社すかいらーく
v利利⽤用ユーザーが数百万⼈人以上に増えても安定してサー
ビスが稼働するアーキテクチャを⽬目指した
vコンテンツ配信、認可、プッシュ通知などモバイルア
プリに⽋欠かせない機能をモバイルサービスをフル活⽤用
して構築
http://dev.classmethod.jp/cloud/skylark-bamiyan-mobile-app/
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)
スクリーンショット
これまでのアプローチ
v モノリシックなアプリを複数のEC2イン
スタンス上で稼働
v 複雑なデプロイ。⼀一⾏行行の変更更でも全体の
再デプロイが必要
v スケーラビリティ/俊敏性と新機能のバラ
ンスを取る必要があり頻繁なリリースが
できない
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
最後に
Serverless
• 有志が作成したサーバレスなWeb、モバイルアプリケー
ションを構築するためのフレームワーク
• ユーザの⼊入⼒力力内容を元に必要なCFテンプレートを⾃自動⽣生成
• LambdaファンクションのScaffoldと各種定義を⾃自動⽣生成
• デプロイするとAPI Gatewayのエンドポイント、リソースを
⽣生成し、対応するLambdaファンクションを紐紐付け
• CLIとして提供
• AWSのオフィシャルツールではない
https://github.com/serverless/serverless
Conclusion
まずはサーバレスでの実装を検討
• ビジネスの差別化に繋がりにくいにも関わ
らず⼿手間ヒマのかかる箇所はサービスを利利
⽤用してオフロード
マネージドサービスだけでは難しい箇所は
EC2を使って実装
限りあるエンジニアリングリソースはビジ
ネスの差別化に集中
Scale Your Business without Servers

More Related Content

What's hot

AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)Keisuke Nishitani
 
AWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API GatewayAWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API GatewayShinpei Ohtani
 
IoTデザインパターン 2015 JAWS沖縄
IoTデザインパターン 2015 JAWS沖縄IoTデザインパターン 2015 JAWS沖縄
IoTデザインパターン 2015 JAWS沖縄Toshiaki Enami
 
AWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep DiveAWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep DiveKeisuke Nishitani
 
Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)Keisuke Nishitani
 
Application Deployment on AWS
Application Deployment on AWSApplication Deployment on AWS
Application Deployment on AWSEiji Shinohara
 
Morning Session - AWS Serverless Ways
Morning Session - AWS Serverless WaysMorning Session - AWS Serverless Ways
Morning Session - AWS Serverless Waysakitsukada
 
モバイル開発を支えるAWS Mobile Services
モバイル開発を支えるAWS Mobile Servicesモバイル開発を支えるAWS Mobile Services
モバイル開発を支えるAWS Mobile ServicesKeisuke Nishitani
 
AWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
AWS Black Belt Tech シリーズ 2015 - Amazon API GatewayAWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
AWS Black Belt Tech シリーズ 2015 - Amazon API GatewayAmazon Web Services Japan
 
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or ServerlessRunning Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or ServerlessKeisuke Nishitani
 
成長していくサービスとAWS
成長していくサービスとAWS成長していくサービスとAWS
成長していくサービスとAWSMitsuharu Hamba
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来Keisuke Nishitani
 
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めようAWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めようAmazon Web Services Japan
 
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)Amazon Web Services Japan
 
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化Amazon Web Services Japan
 
UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値Keisuke Nishitani
 

What's hot (20)

AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)
 
AWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API GatewayAWS Lambda and Amazon API Gateway
AWS Lambda and Amazon API Gateway
 
IoTデザインパターン 2015 JAWS沖縄
IoTデザインパターン 2015 JAWS沖縄IoTデザインパターン 2015 JAWS沖縄
IoTデザインパターン 2015 JAWS沖縄
 
AWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep DiveAWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep Dive
 
Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)
 
AWS Lambda Update
AWS Lambda UpdateAWS Lambda Update
AWS Lambda Update
 
Application Deployment on AWS
Application Deployment on AWSApplication Deployment on AWS
Application Deployment on AWS
 
AWS Lambda Updates
AWS Lambda UpdatesAWS Lambda Updates
AWS Lambda Updates
 
Morning Session - AWS Serverless Ways
Morning Session - AWS Serverless WaysMorning Session - AWS Serverless Ways
Morning Session - AWS Serverless Ways
 
モバイル開発を支えるAWS Mobile Services
モバイル開発を支えるAWS Mobile Servicesモバイル開発を支えるAWS Mobile Services
モバイル開発を支えるAWS Mobile Services
 
AWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
AWS Black Belt Tech シリーズ 2015 - Amazon API GatewayAWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
AWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
 
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or ServerlessRunning Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
Running Java Apps with Amazon EC2, AWS Elastic Beanstalk or Serverless
 
成長していくサービスとAWS
成長していくサービスとAWS成長していくサービスとAWS
成長していくサービスとAWS
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来
 
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めようAWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
 
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
 
失敗から学ぶAWSの監視
失敗から学ぶAWSの監視失敗から学ぶAWSの監視
失敗から学ぶAWSの監視
 
AWS re:Mind for CTOs
AWS re:Mind for CTOsAWS re:Mind for CTOs
AWS re:Mind for CTOs
 
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
AWS Lambdaによるデータ処理理の⾃自動化とコモディティ化
 
UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値
 

Viewers also liked

サーバーレスアーキテクチャのすすめ(公開版)
サーバーレスアーキテクチャのすすめ(公開版)サーバーレスアーキテクチャのすすめ(公開版)
サーバーレスアーキテクチャのすすめ(公開版)Keisuke Kadoyama
 
El reino de_zacatollan_y_sus_animales
El reino de_zacatollan_y_sus_animalesEl reino de_zacatollan_y_sus_animales
El reino de_zacatollan_y_sus_animalesCesar Adame
 
נועם קוריס כתבה כלכליסט
נועם קוריס כתבה  כלכליסטנועם קוריס כתבה  כלכליסט
נועם קוריס כתבה כלכליסטנועם קוריס
 
Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...
Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...
Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...Conferencia Sindrome Metabolico
 
Risk Control Specialist Profile
Risk Control Specialist ProfileRisk Control Specialist Profile
Risk Control Specialist ProfileDieter Moll
 
フルマネージドのポイントシステム
フルマネージドのポイントシステムフルマネージドのポイントシステム
フルマネージドのポイントシステムMasayuki Kato
 
Vol 1.Repentance Magazine. The Rapture by prophet D Owuor
Vol 1.Repentance Magazine. The Rapture by prophet D OwuorVol 1.Repentance Magazine. The Rapture by prophet D Owuor
Vol 1.Repentance Magazine. The Rapture by prophet D OwuorFrancisco Gurrea-Nozaleda
 
How much does your PPA pay?
How much does your PPA pay?How much does your PPA pay?
How much does your PPA pay?Vale Energy Ltd
 
PFSense - Configuração e Instalação PT-BR
PFSense - Configuração e Instalação PT-BRPFSense - Configuração e Instalação PT-BR
PFSense - Configuração e Instalação PT-BRHeber Gutenberg
 
Tendances et innovations dans l'univers de la lingerie
Tendances et innovations dans l'univers de la lingerieTendances et innovations dans l'univers de la lingerie
Tendances et innovations dans l'univers de la lingeriesourdillat
 
Rise of Applied Artificial Intelligence in India
Rise of Applied Artificial Intelligence in IndiaRise of Applied Artificial Intelligence in India
Rise of Applied Artificial Intelligence in IndiaManish Singhal
 
60 Second Summary: Barack Obama's MasterClass in Speaking
60 Second Summary: Barack Obama's MasterClass in Speaking 60 Second Summary: Barack Obama's MasterClass in Speaking
60 Second Summary: Barack Obama's MasterClass in Speaking SpeakerHub
 
Basics of Data Analysis in Bioinformatics
Basics of Data Analysis in BioinformaticsBasics of Data Analysis in Bioinformatics
Basics of Data Analysis in BioinformaticsElena Sügis
 
Van laarhoven lens
Van laarhoven lensVan laarhoven lens
Van laarhoven lensNaoki Aoyama
 
El lenguaje de las redes sociales ¿destrucción o moda
El lenguaje de las redes sociales  ¿destrucción o moda El lenguaje de las redes sociales  ¿destrucción o moda
El lenguaje de las redes sociales ¿destrucción o moda santiago echeverri
 
Towards an integrated UK national research data infrastructure
Towards an integrated UK national research data infrastructureTowards an integrated UK national research data infrastructure
Towards an integrated UK national research data infrastructureJisc RDM
 
Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...
Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...
Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...OECD Governance
 
Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...
Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...
Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...Storyline Presentations
 

Viewers also liked (20)

サーバーレスアーキテクチャのすすめ(公開版)
サーバーレスアーキテクチャのすすめ(公開版)サーバーレスアーキテクチャのすすめ(公開版)
サーバーレスアーキテクチャのすすめ(公開版)
 
El reino de_zacatollan_y_sus_animales
El reino de_zacatollan_y_sus_animalesEl reino de_zacatollan_y_sus_animales
El reino de_zacatollan_y_sus_animales
 
נועם קוריס כתבה כלכליסט
נועם קוריס כתבה  כלכליסטנועם קוריס כתבה  כלכליסט
נועם קוריס כתבה כלכליסט
 
Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...
Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...
Determinación del factor de riesgo cardiovascular y niveles de adipocitocinas...
 
Risk Control Specialist Profile
Risk Control Specialist ProfileRisk Control Specialist Profile
Risk Control Specialist Profile
 
Seleccionando Recursos Web para la Investigación
Seleccionando Recursos Web para la InvestigaciónSeleccionando Recursos Web para la Investigación
Seleccionando Recursos Web para la Investigación
 
フルマネージドのポイントシステム
フルマネージドのポイントシステムフルマネージドのポイントシステム
フルマネージドのポイントシステム
 
Vol 1.Repentance Magazine. The Rapture by prophet D Owuor
Vol 1.Repentance Magazine. The Rapture by prophet D OwuorVol 1.Repentance Magazine. The Rapture by prophet D Owuor
Vol 1.Repentance Magazine. The Rapture by prophet D Owuor
 
How much does your PPA pay?
How much does your PPA pay?How much does your PPA pay?
How much does your PPA pay?
 
PFSense - Configuração e Instalação PT-BR
PFSense - Configuração e Instalação PT-BRPFSense - Configuração e Instalação PT-BR
PFSense - Configuração e Instalação PT-BR
 
ERTMS vs ASFA Digital in Spain
ERTMS vs ASFA Digital in SpainERTMS vs ASFA Digital in Spain
ERTMS vs ASFA Digital in Spain
 
Tendances et innovations dans l'univers de la lingerie
Tendances et innovations dans l'univers de la lingerieTendances et innovations dans l'univers de la lingerie
Tendances et innovations dans l'univers de la lingerie
 
Rise of Applied Artificial Intelligence in India
Rise of Applied Artificial Intelligence in IndiaRise of Applied Artificial Intelligence in India
Rise of Applied Artificial Intelligence in India
 
60 Second Summary: Barack Obama's MasterClass in Speaking
60 Second Summary: Barack Obama's MasterClass in Speaking 60 Second Summary: Barack Obama's MasterClass in Speaking
60 Second Summary: Barack Obama's MasterClass in Speaking
 
Basics of Data Analysis in Bioinformatics
Basics of Data Analysis in BioinformaticsBasics of Data Analysis in Bioinformatics
Basics of Data Analysis in Bioinformatics
 
Van laarhoven lens
Van laarhoven lensVan laarhoven lens
Van laarhoven lens
 
El lenguaje de las redes sociales ¿destrucción o moda
El lenguaje de las redes sociales  ¿destrucción o moda El lenguaje de las redes sociales  ¿destrucción o moda
El lenguaje de las redes sociales ¿destrucción o moda
 
Towards an integrated UK national research data infrastructure
Towards an integrated UK national research data infrastructureTowards an integrated UK national research data infrastructure
Towards an integrated UK national research data infrastructure
 
Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...
Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...
Northern Sparsely Populated Areas - Launch of OECD report, Brussels, 13 March...
 
Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...
Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...
Great Speakers Make Better Leaders - 5 Communication Lessons from John Chambe...
 

Similar to Scale Your Business without Servers

20200630 AWS Black Belt Online Seminar Amazon Cognito
20200630 AWS Black Belt Online Seminar Amazon Cognito20200630 AWS Black Belt Online Seminar Amazon Cognito
20200630 AWS Black Belt Online Seminar Amazon CognitoAmazon Web Services Japan
 
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発Yuki Ando
 
Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016akitsukada
 
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用Amazon Web Services Japan
 
CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~
CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~
CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~decode2016
 
AAD B2C使ってみた
AAD B2C使ってみたAAD B2C使ってみた
AAD B2C使ってみた勇人 坂本
 
AWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS CognitoAWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS CognitoAmazon Web Services Japan
 
AWS_reInforce_2022_reCap_Ja.pdf
AWS_reInforce_2022_reCap_Ja.pdfAWS_reInforce_2022_reCap_Ja.pdf
AWS_reInforce_2022_reCap_Ja.pdfHayato Kiriyama
 
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践Amazon Web Services Japan
 
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530崇之 清水
 
SecurityJAWS AWS Security Services Update 20200214
SecurityJAWS AWS Security Services Update 20200214SecurityJAWS AWS Security Services Update 20200214
SecurityJAWS AWS Security Services Update 20200214Hayato Kiriyama
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon Web Services Japan
 
AWS Black Belt Techシリーズ Amazon Cognito / Amazon Mobile Analytics
AWS Black Belt Techシリーズ  Amazon Cognito / Amazon Mobile AnalyticsAWS Black Belt Techシリーズ  Amazon Cognito / Amazon Mobile Analytics
AWS Black Belt Techシリーズ Amazon Cognito / Amazon Mobile AnalyticsAmazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨Amazon Web Services Japan
 
セキュリティ設計の頻出論点
セキュリティ設計の頻出論点セキュリティ設計の頻出論点
セキュリティ設計の頻出論点Tomohiro Nakashima
 

Similar to Scale Your Business without Servers (20)

20200630 AWS Black Belt Online Seminar Amazon Cognito
20200630 AWS Black Belt Online Seminar Amazon Cognito20200630 AWS Black Belt Online Seminar Amazon Cognito
20200630 AWS Black Belt Online Seminar Amazon Cognito
 
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発
 
Black Belt Online Seminar Amazon Cognito
Black Belt Online Seminar Amazon CognitoBlack Belt Online Seminar Amazon Cognito
Black Belt Online Seminar Amazon Cognito
 
Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016
 
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
 
CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~
CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~
CLT-009_Windows 10 アプリとシングルサインオン ~Microsoft Passport の意義とその実装方法~
 
AAD B2C使ってみた
AAD B2C使ってみたAAD B2C使ってみた
AAD B2C使ってみた
 
AWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS CognitoAWS Black Belt Online Seminar 2017 AWS Cognito
AWS Black Belt Online Seminar 2017 AWS Cognito
 
AWS_reInforce_2022_reCap_Ja.pdf
AWS_reInforce_2022_reCap_Ja.pdfAWS_reInforce_2022_reCap_Ja.pdf
AWS_reInforce_2022_reCap_Ja.pdf
 
AWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoTAWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoT
 
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
 
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
PHP で始める AWS モバイルサービス - PHPカンファレンス_20150530
 
SecurityJAWS AWS Security Services Update 20200214
SecurityJAWS AWS Security Services Update 20200214SecurityJAWS AWS Security Services Update 20200214
SecurityJAWS AWS Security Services Update 20200214
 
AWS の IoT 向けサービス
AWS の IoT 向けサービスAWS の IoT 向けサービス
AWS の IoT 向けサービス
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
 
AWS IoT アップデート 2016.02.16
AWS IoT アップデート 2016.02.16AWS IoT アップデート 2016.02.16
AWS IoT アップデート 2016.02.16
 
AWS Black Belt Techシリーズ Amazon Cognito / Amazon Mobile Analytics
AWS Black Belt Techシリーズ  Amazon Cognito / Amazon Mobile AnalyticsAWS Black Belt Techシリーズ  Amazon Cognito / Amazon Mobile Analytics
AWS Black Belt Techシリーズ Amazon Cognito / Amazon Mobile Analytics
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
 
セキュリティ設計の頻出論点
セキュリティ設計の頻出論点セキュリティ設計の頻出論点
セキュリティ設計の頻出論点
 
Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2Gaming cicd-pipeline gaming-technight-2
Gaming cicd-pipeline gaming-technight-2
 

More from Keisuke Nishitani

Application Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless WorldApplication Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless WorldKeisuke Nishitani
 
AWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべことAWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべことKeisuke Nishitani
 
Introducing Amazon Rekognition, Amazon Polly and Amazon Lex
Introducing Amazon Rekognition, Amazon Polly and Amazon LexIntroducing Amazon Rekognition, Amazon Polly and Amazon Lex
Introducing Amazon Rekognition, Amazon Polly and Amazon LexKeisuke Nishitani
 
AWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介しますAWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介しますKeisuke Nishitani
 
Going Serverless, Building Applications with No Servers
Going Serverless, Building Applications with No ServersGoing Serverless, Building Applications with No Servers
Going Serverless, Building Applications with No ServersKeisuke Nishitani
 
Building Scalable Application on the Cloud
Building Scalable Application on the CloudBuilding Scalable Application on the Cloud
Building Scalable Application on the CloudKeisuke Nishitani
 
Automated Testing on AWS Device Farm
Automated Testing on AWS Device FarmAutomated Testing on AWS Device Farm
Automated Testing on AWS Device FarmKeisuke Nishitani
 
RubyとAmazon Web Service で生み出す新しい価値
RubyとAmazon Web Serviceで生み出す新しい価値RubyとAmazon Web Serviceで生み出す新しい価値
RubyとAmazon Web Service で生み出す新しい価値Keisuke Nishitani
 

More from Keisuke Nishitani (15)

Application Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless WorldApplication Lifecycle Management in a Serverless World
Application Lifecycle Management in a Serverless World
 
Serverless Anti-Patterns
Serverless Anti-PatternsServerless Anti-Patterns
Serverless Anti-Patterns
 
AWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべことAWSでアプリ開発するなら 知っておくべこと
AWSでアプリ開発するなら 知っておくべこと
 
Tune Up AWS Lambda
Tune Up AWS LambdaTune Up AWS Lambda
Tune Up AWS Lambda
 
What's new with Serverless
What's new with ServerlessWhat's new with Serverless
What's new with Serverless
 
Introduction to AWS X-Ray
Introduction to AWS X-RayIntroduction to AWS X-Ray
Introduction to AWS X-Ray
 
Introducing Amazon Rekognition, Amazon Polly and Amazon Lex
Introducing Amazon Rekognition, Amazon Polly and Amazon LexIntroducing Amazon Rekognition, Amazon Polly and Amazon Lex
Introducing Amazon Rekognition, Amazon Polly and Amazon Lex
 
What's new with Serverless
What's new with ServerlessWhat's new with Serverless
What's new with Serverless
 
AWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介しますAWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介します
 
Going Serverless, Building Applications with No Servers
Going Serverless, Building Applications with No ServersGoing Serverless, Building Applications with No Servers
Going Serverless, Building Applications with No Servers
 
Building Scalable Application on the Cloud
Building Scalable Application on the CloudBuilding Scalable Application on the Cloud
Building Scalable Application on the Cloud
 
RESTful API 入門
RESTful API 入門RESTful API 入門
RESTful API 入門
 
Automated Testing on AWS Device Farm
Automated Testing on AWS Device FarmAutomated Testing on AWS Device Farm
Automated Testing on AWS Device Farm
 
RubyとAmazon Web Service で生み出す新しい価値
RubyとAmazon Web Serviceで生み出す新しい価値RubyとAmazon Web Serviceで生み出す新しい価値
RubyとAmazon Web Service で生み出す新しい価値
 
AWS Lambdaを紐解く
AWS Lambdaを紐解くAWS Lambdaを紐解く
AWS Lambdaを紐解く
 

Recently uploaded

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 

Recently uploaded (9)

論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 

Scale Your Business without Servers