SlideShare a Scribd company logo
1 of 24
Download to read offline
サーバーレスアーキテクチャ
で作るモバイルバックエンド
JXUG福岡 Xamarin初⼼者向けハンズオン
2017/12/09
加藤 司
• 北海道出⾝
• 株式会社オルターブース 所属
• Microsoft MVP for Microsoft Azure
• コミュニティ活動
• JAZUG熊本⽀部(くまあず)
• 熊本クラウド語ろう会(熊クラ会)
⾃⼰紹介
Serverless
サーバーレス? Serverless
サーバーが無い
→「利⽤者が管理する」サーバーが無い
Serverless Architecture
マネージドサービスのみを利⽤し、システム
を構築するアーキテクチャ
Azure Functions
Azure Functions
コード イベント + データ Azure Functions
Azure Functions
イベント/データ駆動の「関数」実⾏プラッ
トフォーム(FaaS)で、多数の⾔語で関数を作
成できる。また、様々なイベントやサービス
と容易に連携できるのが特徴。
Azure Functions
トリガー:
バインディング:
Timer、Webhooks、Cosmos DB、
キュー、ファイル作成時に起動
データ⼊出⼒、ルーティング・ストリー
ム処理、通知(プッシュ、メールなど)
Azure Functions
サポート⾔語 (Ver. 1.x)
C#, F#, JavaScript/Node.js/TypeScript
Python, PowerShell, cmd (.bat), Bash (.sh), PHP
Azure Functions
サポート⾔語 (Ver. 2.0)
.NET Core 2.0 (C#, F#), JavaScript/Node.js,
Java/Maven
Azure Functions Runtime 2.0 (beta) が必要
Preview
Azure	Functions
2種類のプランから選択
・App Service Plan
・Consumption Plan
Azure	Functions
2種類のプランから選択
・App Service Plan
・Consumption Plan
型 1.x 2.x トリガー ⼊⼒ 出⼒
Blob Storage ✔ ✔ ✔ ✔ ✔
Cosmos DB ✔ ✔ ✔ ✔ ✔
Event Hubs ✔ ✔ ✔ ✔
外部ファイル ✔ ✔ ✔
外部テーブル ✔ ✔ ✔
HTTP ✔ ✔ ✔ ✔
型 1.x 2.x トリガー ⼊⼒ 出⼒
Microsoft Graph
Excel テーブル
✔ ✔ ✔
Microsoft Graph
OneDrive ファイル
✔ ✔ ✔
Microsoft Graph
Outlook メール
✔ ✔
Microsoft Graph
Events
✔ ✔ ✔ ✔
Microsoft Graph
Auth トークン
✔ ✔
Microsoft Graph
Excel テーブル
✔ ✔ ✔
Azure	Functions
型 1.x 2.x トリガー ⼊⼒ 出⼒
Mobile Apps ✔ ✔ ✔ ✔
Notification Hubs ✔ ✔
Queue Storage ✔ ✔ ✔ ✔
SendGrid ✔ ✔ ✔
Service Bus ✔ ✔ ✔ ✔
Table Storage ✔ ✔ ✔ ✔
Azure	Functions
Azure	Functions
型 1.x 2.x トリガー ⼊⼒ 出⼒
Timer ✔ ✔ ✔
Twilio ✔ ✔ ✔
Webhook ✔ ✔ ✔
App Service
Mobile Apps
App Service Mobile Apps
• iOS, Android, Windows アプリなど各プラットフォー
ムのアプリのバックエンドを構築できるサービス
• Active Direcotryによるシングルサインオンサポート
• ⾃動スケールにも対応
Mobile Apps クイックスタート
• iOS (Objective-C) , iOS (Swift)
• Android
• Windows (C#) , Windows 8.1 (C#)
• Xamarin.Android , Xamarin.iOS , Xamarin.Forms
• Cordova
Mobile Apps データ接続
サポートされているデータストア
• SQL Database
• ストレージ
Mobile Apps データ接続
サポートされているバックエンド⾔語
• Node.js
• C#
DEMO
DEMO構成
Upload Blob Trigger Mail Send
まとめ
•全ての処理をXamarinで実装するのではなく、バッ
クエンド処理をServerless Architectureで実装する
ことで軽量なアプリが作成できる。
•処理の特徴から最適なアーキテクチャの選定をし、
バランスの取れたシステムを構築しましょう。
ご静聴ありがとうございました!

More Related Content

What's hot

Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森
Sunao Tomita
 
2010.11.25 LT Doc fluxflex on Startup Dating
2010.11.25 LT Doc fluxflex on Startup Dating2010.11.25 LT Doc fluxflex on Startup Dating
2010.11.25 LT Doc fluxflex on Startup Dating
Hiro Fukami
 

What's hot (20)

クラウド化が進む今だから読み解くHyper-Vアーキテクチャ
クラウド化が進む今だから読み解くHyper-Vアーキテクチャクラウド化が進む今だから読み解くHyper-Vアーキテクチャ
クラウド化が進む今だから読み解くHyper-Vアーキテクチャ
 
EC-CUBE on SQL データベース勉強会
EC-CUBE on SQL データベース勉強会EC-CUBE on SQL データベース勉強会
EC-CUBE on SQL データベース勉強会
 
Azure Functionsから始めるServerless
Azure Functionsから始めるServerlessAzure Functionsから始めるServerless
Azure Functionsから始めるServerless
 
オトナのService Fabric~マイクロサービス編
オトナのService Fabric~マイクロサービス編オトナのService Fabric~マイクロサービス編
オトナのService Fabric~マイクロサービス編
 
Power Automate with kintone
Power Automate with kintonePower Automate with kintone
Power Automate with kintone
 
Vsugday2010 summer lt
Vsugday2010 summer ltVsugday2010 summer lt
Vsugday2010 summer lt
 
WordPress と Azure の素敵な関係 version 3.6
WordPress と Azure の素敵な関係 version 3.6WordPress と Azure の素敵な関係 version 3.6
WordPress と Azure の素敵な関係 version 3.6
 
[Japan Tech summit 2017] MAI 002
[Japan Tech summit 2017]  MAI 002[Japan Tech summit 2017]  MAI 002
[Japan Tech summit 2017] MAI 002
 
Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森
 
Azureの管理権限について
Azureの管理権限について Azureの管理権限について
Azureの管理権限について
 
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
JAWS-UG 三都物語 2014 今しか役に立たない EC2入門 2014夏
 
re:Invent2017で発表された新機能と運用
re:Invent2017で発表された新機能と運用re:Invent2017で発表された新機能と運用
re:Invent2017で発表された新機能と運用
 
30min serverless-x tuber
30min serverless-x tuber30min serverless-x tuber
30min serverless-x tuber
 
20分でおさらいするサーバレスアーキテクチャ 「サーバレスの薄い本ダイジェスト」 #serverlesstokyo
20分でおさらいするサーバレスアーキテクチャ 「サーバレスの薄い本ダイジェスト」 #serverlesstokyo20分でおさらいするサーバレスアーキテクチャ 「サーバレスの薄い本ダイジェスト」 #serverlesstokyo
20分でおさらいするサーバレスアーキテクチャ 「サーバレスの薄い本ダイジェスト」 #serverlesstokyo
 
Aws
AwsAws
Aws
 
2010.11.25 LT Doc fluxflex on Startup Dating
2010.11.25 LT Doc fluxflex on Startup Dating2010.11.25 LT Doc fluxflex on Startup Dating
2010.11.25 LT Doc fluxflex on Startup Dating
 
JAWS-UG CLI #33 LT - AWS Directory Serviceを LDAP Serverとして 利用してみた
JAWS-UG CLI #33 LT - AWS Directory ServiceをLDAP Serverとして利用してみたJAWS-UG CLI #33 LT - AWS Directory ServiceをLDAP Serverとして利用してみた
JAWS-UG CLI #33 LT - AWS Directory Serviceを LDAP Serverとして 利用してみた
 
土日でLineみたいなチャット作ってきた!
土日でLineみたいなチャット作ってきた!土日でLineみたいなチャット作ってきた!
土日でLineみたいなチャット作ってきた!
 
20141122 デジコミュ秋田 WordPressサイト永代供養の儀
20141122 デジコミュ秋田 WordPressサイト永代供養の儀20141122 デジコミュ秋田 WordPressサイト永代供養の儀
20141122 デジコミュ秋田 WordPressサイト永代供養の儀
 
[AC11] サーバー管理よ、サヨウナラ。サーバーレスアーキテクチャの意義と実践
[AC11] サーバー管理よ、サヨウナラ。サーバーレスアーキテクチャの意義と実践[AC11] サーバー管理よ、サヨウナラ。サーバーレスアーキテクチャの意義と実践
[AC11] サーバー管理よ、サヨウナラ。サーバーレスアーキテクチャの意義と実践
 

Similar to サーバーレスアーキテクチャで作るモバイルバックエンド

Windows azureって何
Windows azureって何Windows azureって何
Windows azureって何
Kana SUZUKI
 

Similar to サーバーレスアーキテクチャで作るモバイルバックエンド (20)

[Serverless OpenHack Tokyo] Azure Serverless (Japanese)
[Serverless OpenHack Tokyo] Azure Serverless (Japanese)[Serverless OpenHack Tokyo] Azure Serverless (Japanese)
[Serverless OpenHack Tokyo] Azure Serverless (Japanese)
 
Serverless Architecture Overview #cdevc
Serverless Architecture Overview #cdevcServerless Architecture Overview #cdevc
Serverless Architecture Overview #cdevc
 
Azure serverless!! azure functionsでサーバーを意識しない開発
Azure serverless!! azure functionsでサーバーを意識しない開発Azure serverless!! azure functionsでサーバーを意識しない開発
Azure serverless!! azure functionsでサーバーを意識しない開発
 
Docker on azure!進化していくcontainerを覗いてみよう!
Docker on azure!進化していくcontainerを覗いてみよう! Docker on azure!進化していくcontainerを覗いてみよう!
Docker on azure!進化していくcontainerを覗いてみよう!
 
Infra as Code in Azure
Infra as Code in AzureInfra as Code in Azure
Infra as Code in Azure
 
20170719 wintechq azure_stack
20170719 wintechq azure_stack20170719 wintechq azure_stack
20170719 wintechq azure_stack
 
アプリ開発&チーム管理で 役立った拡張機能
アプリ開発&チーム管理で役立った拡張機能アプリ開発&チーム管理で役立った拡張機能
アプリ開発&チーム管理で 役立った拡張機能
 
おいしいフルマネージドデータベース はじめました
おいしいフルマネージドデータベース はじめましたおいしいフルマネージドデータベース はじめました
おいしいフルマネージドデータベース はじめました
 
Smart store servlerless-20191030-40min
Smart store servlerless-20191030-40minSmart store servlerless-20191030-40min
Smart store servlerless-20191030-40min
 
お得に手軽に♪試してみよう!サーバーレスアーキテクチャ ~Azure Functions / Logic Apps~
お得に手軽に♪試してみよう!サーバーレスアーキテクチャ ~Azure Functions / Logic Apps~お得に手軽に♪試してみよう!サーバーレスアーキテクチャ ~Azure Functions / Logic Apps~
お得に手軽に♪試してみよう!サーバーレスアーキテクチャ ~Azure Functions / Logic Apps~
 
なるほどわかった!App Service on Linux
なるほどわかった!App Service on Linuxなるほどわかった!App Service on Linux
なるほどわかった!App Service on Linux
 
[HAKODATE Developer Conference 2018] 「Azure Functions」で始めるサーバーレス アプリケーション開発
[HAKODATE Developer Conference 2018] 「Azure Functions」で始めるサーバーレス アプリケーション開発[HAKODATE Developer Conference 2018] 「Azure Functions」で始めるサーバーレス アプリケーション開発
[HAKODATE Developer Conference 2018] 「Azure Functions」で始めるサーバーレス アプリケーション開発
 
Microsoft Azure 概要 (2015 年 4 月版)
Microsoft Azure 概要 (2015 年 4 月版)Microsoft Azure 概要 (2015 年 4 月版)
Microsoft Azure 概要 (2015 年 4 月版)
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure
 
20190731 Azure Functions x Line at Azure Tech Lab #4
20190731 Azure Functions x Line at Azure Tech Lab #420190731 Azure Functions x Line at Azure Tech Lab #4
20190731 Azure Functions x Line at Azure Tech Lab #4
 
azure functionsとcsx
azure functionsとcsxazure functionsとcsx
azure functionsとcsx
 
Windows azureって何
Windows azureって何Windows azureって何
Windows azureって何
 
Serverless for VUI
Serverless for VUIServerless for VUI
Serverless for VUI
 
What is Serverless?
What is Serverless?What is Serverless?
What is Serverless?
 
2020/12/03 SaaS を正しい方向へ加速するフィードバックループ
2020/12/03 SaaS を正しい方向へ加速するフィードバックループ2020/12/03 SaaS を正しい方向へ加速するフィードバックループ
2020/12/03 SaaS を正しい方向へ加速するフィードバックループ
 

More from Tsukasa Kato

More from Tsukasa Kato (20)

すぐにでも使える Windows Virtual Desktop
すぐにでも使える Windows Virtual Desktopすぐにでも使える Windows Virtual Desktop
すぐにでも使える Windows Virtual Desktop
 
Open Source x AI
Open Source x AIOpen Source x AI
Open Source x AI
 
ニューノーマルな働き方!?Teams投稿をセンチメント分析!
ニューノーマルな働き方!?Teams投稿をセンチメント分析!ニューノーマルな働き方!?Teams投稿をセンチメント分析!
ニューノーマルな働き方!?Teams投稿をセンチメント分析!
 
WVD運用に欠かせない5つのポイント
WVD運用に欠かせない5つのポイントWVD運用に欠かせない5つのポイント
WVD運用に欠かせない5つのポイント
 
ARM版Windows Virtual Desktop事始め
ARM版Windows Virtual Desktop事始めARM版Windows Virtual Desktop事始め
ARM版Windows Virtual Desktop事始め
 
Container x AI
Container x AIContainer x AI
Container x AI
 
Azure DevOps と開発管理
Azure DevOps と開発管理Azure DevOps と開発管理
Azure DevOps と開発管理
 
ぼうけんにでかけよう Kubernetes KEDA
ぼうけんにでかけよう Kubernetes KEDAぼうけんにでかけよう Kubernetes KEDA
ぼうけんにでかけよう Kubernetes KEDA
 
Azure Private Linkのご紹介
Azure Private Linkのご紹介Azure Private Linkのご紹介
Azure Private Linkのご紹介
 
Azure Vnet の拡張と強化
Azure Vnetの拡張と強化Azure Vnetの拡張と強化
Azure Vnet の拡張と強化
 
マネージドBastion​ Azure Bastion​
マネージドBastion​ Azure Bastion​マネージドBastion​ Azure Bastion​
マネージドBastion​ Azure Bastion​
 
SendGridを使ったスマホアプリ運用
SendGridを使ったスマホアプリ運用SendGridを使ったスマホアプリ運用
SendGridを使ったスマホアプリ運用
 
よりお手軽なBotへ 〜APIで効率的なBotを〜
よりお手軽なBotへ 〜APIで効率的なBotを〜よりお手軽なBotへ 〜APIで効率的なBotを〜
よりお手軽なBotへ 〜APIで効率的なBotを〜
 
Container deployment on Azure
Container deployment on AzureContainer deployment on Azure
Container deployment on Azure
 
AKS+KEDAで実現!Container Functions Pipeline
AKS+KEDAで実現!Container Functions PipelineAKS+KEDAで実現!Container Functions Pipeline
AKS+KEDAで実現!Container Functions Pipeline
 
Azuredevopsakskeda
AzuredevopsakskedaAzuredevopsakskeda
Azuredevopsakskeda
 
Build2019発表情報一気見せ
Build2019発表情報一気見せBuild2019発表情報一気見せ
Build2019発表情報一気見せ
 
俺のセキュリティを超えてゆけ
俺のセキュリティを超えてゆけ俺のセキュリティを超えてゆけ
俺のセキュリティを超えてゆけ
 
今後のContainerの行く末の感じたこと、思ったこと 〜JKD参加報告〜
今後のContainerの行く末の感じたこと、思ったこと〜JKD参加報告〜今後のContainerの行く末の感じたこと、思ったこと〜JKD参加報告〜
今後のContainerの行く末の感じたこと、思ったこと 〜JKD参加報告〜
 
はたらく認証
はたらく認証はたらく認証
はたらく認証
 

Recently uploaded

Recently uploaded (12)

Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 

サーバーレスアーキテクチャで作るモバイルバックエンド