SlideShare a Scribd company logo
1 of 24
Download to read offline
Azure サービス解説
LINE ∞ MS Developers ミニアプリNight
https://msdevjp.connpass.com/event/188224/
Self introduction
自己紹介
Azure 陣営
Kazumi OHIRAAtsushi YOKOHAMA
Microsoft MVP for AI Microsoft MVP for Azure
↑Azureもつよ強の先輩
ことの発端
今回の要件とお気持ち
• LIFF (LINE Front-end Framework) を使って何かしよう!
• ぜひ、静的サイトをホストするのに最適な Azure Static Web Apps
をご紹介したい!
• LINEログインによる情報を使って、何かできるようにしよう!
• サーバレスでデータベースを使う例をご紹介したい
• (Azure の高い的なイメージを払しょくしたい…!)
概要
ハンズオンのコンテンツ説明
試しに、ミニゲームをつくってみた
• 直前の回で選択された色を当てるゲーム
• プレイヤーは自分だけとは限らない
試しに、ミニゲームをつくってみた
• 直前の回で選択された色を当てるゲーム
• プレイヤーは自分だけとは限らない
• が、センスがありませんでした…
(連打するとずっと勝ち続けてしまう…
(まぁ、今回はゲームの中身は重要ではないので…
構成
LIFF
(LINE Front-end Framework)
Microsoft Azure
Azure Static Web Apps
+ Azure Functions
Azure Cosmos DB
Cosmos DB に保存するデータ構造
global-results
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
…
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
…
player-results
全体のゲーム結果から、前回選択
された色を判定
ユーザーごとの結果も保持
Azure で静的サイトをホストする
Azure Static Web Apps、Azure Functions、Azure Cosmos DB
Azure Static Web Apps
• 静的フロント エンドにフォーカスした PaaS
• 様々なフレームワークに対応
• Angular、React、Vue、 Svelte など多数
• 静的フロント エンドに必要な機能がそろっている
• GitHub Actions を利用した CI/CD 環境
• APIなどのバックエンドとして Azure Functions が統合されている
• 認証機構を簡単に利用できる
• Azure AD、GitHub、Facebook、Google、Twitter によるログイン
• 現在プレビュー公開中
Azure Functions
• イベント駆動のサーバレス コンピューティングプラットフォーム、FaaS
• HTTPリクエストやキューなど、さまざまなイベントを起点に実行
• さまざまな言語で利用可能
• C#、JavaScript/TypeScript、Java、Python、PowerShell など
• Durable Functions
• ステートフルなファンクションを実装できる(待機中は無課金)
• Application Insights によるモニタリング
Azure Cosmos DB
• NoSQLデータベース
• 可用性が高い、スケーラブル
• 性能 (≒料金)は、秒間に処理できるスループット (RU: Request Units)
• データの変更を検知して処理をトリガーする Change feed が秀逸
• コマンド クエリ責務分離(CQRS)パターンの実装に最適
細かいポイント紹介
GitHub Action
• Azure Static Web Apps への継続的デプロイを GitHub
Actions で行っている
• Azure Static Web Apps Deploy · Actions · GitHub Marketplace
• 他のアクションと組み合わせたり、プルリクエストなど GitHub の機能
と連携して利用できるので可能性広がる!
Azure Functions の料金形態
• 頻繁に使わないなら従量課金プラン
• ホットスタートが必要なら App Service プラン(AlwaysOn 有効)
• 利用頻度が高いなら Premium プラン
• 神ブログ記事
• Azure App Service の新しい Premium V3 インスタンスが使えるように
なった - しばやん雑記
Azure Cosmos DB の運用
• Free Tier
• Azure Cosmos DB での開発とテストのための最適化 | Microsoft Docs
• サーバーレスプラン
• Azure Cosmos DB の従量課金ベースのサーバーレス プラン | Microsoft
Docs
• 神ブログ記事
• Azure Cosmos DB Free Tier をプロダクション環境で使う - PaaSがかり
の部屋
• Hack Azure! #2 Ask the Geeks - Cosmos DB 編フォローアップ - し
ばやん雑記
Functions から Cosmos DB を使うには
• Azure Functions には、イベント駆動するためのトリガーや入出力を
簡単に連携できバインドという機能がある
• Azure Functions のトリガーとバインド | Microsoft Docs
• より複雑な操作は SDK が便利
• JavaScript および Node.js 開発者向けの Azure | Microsoft Docs
• 今回は両方使ってます
Cosmos DB のパーティションの話
global-results
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
…
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
…
player-results
Cosmos DB のパーティションの話
global-results
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
…
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
…
player-results
/stage/id をパーティションキーに指定
/lineUser/id をパーティションキーに指定
Cosmos DB のパーティションの話
global-results
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: default}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
{stage: {id: beginner-cup}, selectedColor: …}
…
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user1}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
{lineUser: {id: user2}, selectedColor: …}
…
player-results
/stage/id をパーティションキーに指定
/lineUser/id をパーティションキーに指定
パーテイションをまたがった探索
(クロスパーティション)
がないよう注意!
= RUを大量に消費してしまい、
金額が跳ね上がる
Infrastructure as Code (IaC)
• Azureで使うリソースは ARM テンプレートを用いて一括でデプロイ
• テンプレートの概要 - Azure Resource Manager | Microsoft Docs
• Terraform も Azure で利用できるが、Static Web Apps がまだ
対応してないので待ち
• Azure 上の Terraform のドキュメント - チュートリアル、サンプル、リファレン
ス、リソース - Terraform | Microsoft Docs
実際にやってみましょう!
セルフペースドハンズオンをご一緒に
https://github.com/dzeyelid/line-liff-with-azure-handson

More Related Content

What's hot

ゲーム特化の BaaS! Unity + PlayFab 入門!
ゲーム特化の BaaS! Unity + PlayFab 入門!ゲーム特化の BaaS! Unity + PlayFab 入門!
ゲーム特化の BaaS! Unity + PlayFab 入門!YutoNishine
 
はじめよう Azure Functions
はじめよう Azure Functionsはじめよう Azure Functions
はじめよう Azure Functions一希 大田
 
しみじみサーバーレス
しみじみサーバーレスしみじみサーバーレス
しみじみサーバーレスToru Makabe
 
Azure Functionsでサーバーレスアプリケーション構築
Azure Functionsでサーバーレスアプリケーション構築Azure Functionsでサーバーレスアプリケーション構築
Azure Functionsでサーバーレスアプリケーション構築ryosuke matsumura
 
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却de:code 2017
 
Interoperability of webassembly with javascript
Interoperability of webassembly with javascriptInteroperability of webassembly with javascript
Interoperability of webassembly with javascriptTakao Tetsuro
 
Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!Hiroyuki Mori
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうDevTakas
 
「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐ「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐKazushi Kamegawa
 
クラウド化が進む今だから読み解くHyper-Vアーキテクチャ
クラウド化が進む今だから読み解くHyper-Vアーキテクチャクラウド化が進む今だから読み解くHyper-Vアーキテクチャ
クラウド化が進む今だから読み解くHyper-VアーキテクチャTsukasa Kato
 
サーバーレスアーキテクチャで作るモバイルバックエンド
サーバーレスアーキテクチャで作るモバイルバックエンドサーバーレスアーキテクチャで作るモバイルバックエンド
サーバーレスアーキテクチャで作るモバイルバックエンドTsukasa Kato
 
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在TomomitsuKusaba
 
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらいde:code 2017
 
20150905 stream analytics
20150905 stream analytics20150905 stream analytics
20150905 stream analytics一希 大田
 
ここがつらいよAws batch
ここがつらいよAws batchここがつらいよAws batch
ここがつらいよAws batchYu Yamada
 
Vs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-devVs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-devShotaro Suzuki
 
Docker Actionを利用してOpenWhiskをあれこれする
Docker Actionを利用してOpenWhiskをあれこれするDocker Actionを利用してOpenWhiskをあれこれする
Docker Actionを利用してOpenWhiskをあれこれするHideaki Tokida
 
SpringベースのCloud Native Application
SpringベースのCloud Native ApplicationSpringベースのCloud Native Application
SpringベースのCloud Native Application土岐 孝平
 

What's hot (20)

Container x AI
Container x AIContainer x AI
Container x AI
 
ゲーム特化の BaaS! Unity + PlayFab 入門!
ゲーム特化の BaaS! Unity + PlayFab 入門!ゲーム特化の BaaS! Unity + PlayFab 入門!
ゲーム特化の BaaS! Unity + PlayFab 入門!
 
はじめよう Azure Functions
はじめよう Azure Functionsはじめよう Azure Functions
はじめよう Azure Functions
 
しみじみサーバーレス
しみじみサーバーレスしみじみサーバーレス
しみじみサーバーレス
 
Azure Functionsでサーバーレスアプリケーション構築
Azure Functionsでサーバーレスアプリケーション構築Azure Functionsでサーバーレスアプリケーション構築
Azure Functionsでサーバーレスアプリケーション構築
 
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
 
Interoperability of webassembly with javascript
Interoperability of webassembly with javascriptInteroperability of webassembly with javascript
Interoperability of webassembly with javascript
 
Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!Visual Studio 2019 Updates Pickup!
Visual Studio 2019 Updates Pickup!
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おう
 
「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐ「何もしないのにCIが失敗した」を防ぐ
「何もしないのにCIが失敗した」を防ぐ
 
クラウド化が進む今だから読み解くHyper-Vアーキテクチャ
クラウド化が進む今だから読み解くHyper-Vアーキテクチャクラウド化が進む今だから読み解くHyper-Vアーキテクチャ
クラウド化が進む今だから読み解くHyper-Vアーキテクチャ
 
サーバーレスアーキテクチャで作るモバイルバックエンド
サーバーレスアーキテクチャで作るモバイルバックエンドサーバーレスアーキテクチャで作るモバイルバックエンド
サーバーレスアーキテクチャで作るモバイルバックエンド
 
Apache Spark on Azure
Apache Spark on AzureApache Spark on Azure
Apache Spark on Azure
 
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在
 
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい
[BA06] 50 分で総まとめ! Office 365 開発プラットフォーム最新機能のおさらい
 
20150905 stream analytics
20150905 stream analytics20150905 stream analytics
20150905 stream analytics
 
ここがつらいよAws batch
ここがつらいよAws batchここがつらいよAws batch
ここがつらいよAws batch
 
Vs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-devVs code conf2020-11-21-extensions-for-microservices-app-dev
Vs code conf2020-11-21-extensions-for-microservices-app-dev
 
Docker Actionを利用してOpenWhiskをあれこれする
Docker Actionを利用してOpenWhiskをあれこれするDocker Actionを利用してOpenWhiskをあれこれする
Docker Actionを利用してOpenWhiskをあれこれする
 
SpringベースのCloud Native Application
SpringベースのCloud Native ApplicationSpringベースのCloud Native Application
SpringベースのCloud Native Application
 

Similar to LINE LIFF with Azure ハンズオン資料 - Azure サービス解説

はじめての Azure 開発
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発Yoshitaka Seo
 
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
 
カジュアルに本番データを開発環境に入れる #mysqlcasual
カジュアルに本番データを開発環境に入れる #mysqlcasualカジュアルに本番データを開発環境に入れる #mysqlcasual
カジュアルに本番データを開発環境に入れる #mysqlcasualKazuhiro Oinuma
 
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみようPPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみようDaisuke Masubuchi
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたMasayuki Ozawa
 
Sql world を支える技術
Sql world を支える技術Sql world を支える技術
Sql world を支える技術Oda Shinsuke
 
Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築
Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築
Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築Kazuki Takai
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows AzureKeiichi Hashimoto
 
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020Daisuke Masubuchi
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイントKentaro Matsui
 
Windows azureって何
Windows azureって何Windows azureって何
Windows azureって何Kana SUZUKI
 
社内の遊休PCをAzurePipelinesでCICDに活用しよう
社内の遊休PCをAzurePipelinesでCICDに活用しよう社内の遊休PCをAzurePipelinesでCICDに活用しよう
社内の遊休PCをAzurePipelinesでCICDに活用しようShinya Nakajima
 
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)Amazon Web Services Japan
 
最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介Ryo Iinuma
 
オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用elanlilac
 
db tech showcase 大阪 2014 C12 どうつかう?Couchbase Server
db tech showcase 大阪 2014 C12 どうつかう?Couchbase Serverdb tech showcase 大阪 2014 C12 どうつかう?Couchbase Server
db tech showcase 大阪 2014 C12 どうつかう?Couchbase ServerKazumi Hirose
 
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Masakazu Muraoka
 
Mroongaを選んだ理由と
ちょっと嬉しかった話
Mroongaを選んだ理由と
ちょっと嬉しかった話Mroongaを選んだ理由と
ちょっと嬉しかった話
Mroongaを選んだ理由と
ちょっと嬉しかった話Terui Masashi
 
Azure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しよう
Azure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しようAzure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しよう
Azure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しようShinya Nakajima
 

Similar to LINE LIFF with Azure ハンズオン資料 - Azure サービス解説 (20)

はじめての Azure 開発
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発
 
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
 
カジュアルに本番データを開発環境に入れる #mysqlcasual
カジュアルに本番データを開発環境に入れる #mysqlcasualカジュアルに本番データを開発環境に入れる #mysqlcasual
カジュアルに本番データを開発環境に入れる #mysqlcasual
 
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみようPPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみた
 
Sql world を支える技術
Sql world を支える技術Sql world を支える技術
Sql world を支える技術
 
Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築
Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築
Azure Arc Jumpstart - Azure ArcBox を使った Azure Arc 対応 SQL MI 学習環境の構築
 
【de:code 2020】 Azure Cosmos DB - Build 2020 アップデート
【de:code 2020】 Azure Cosmos DB - Build 2020 アップデート【de:code 2020】 Azure Cosmos DB - Build 2020 アップデート
【de:code 2020】 Azure Cosmos DB - Build 2020 アップデート
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure
 
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
 
Windows azureって何
Windows azureって何Windows azureって何
Windows azureって何
 
社内の遊休PCをAzurePipelinesでCICDに活用しよう
社内の遊休PCをAzurePipelinesでCICDに活用しよう社内の遊休PCをAzurePipelinesでCICDに活用しよう
社内の遊休PCをAzurePipelinesでCICDに活用しよう
 
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
 
最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介最近のフロントエンドツールの紹介
最近のフロントエンドツールの紹介
 
オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用
 
db tech showcase 大阪 2014 C12 どうつかう?Couchbase Server
db tech showcase 大阪 2014 C12 どうつかう?Couchbase Serverdb tech showcase 大阪 2014 C12 どうつかう?Couchbase Server
db tech showcase 大阪 2014 C12 どうつかう?Couchbase Server
 
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会
 
Mroongaを選んだ理由と
ちょっと嬉しかった話
Mroongaを選んだ理由と
ちょっと嬉しかった話Mroongaを選んだ理由と
ちょっと嬉しかった話
Mroongaを選んだ理由と
ちょっと嬉しかった話
 
Azure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しよう
Azure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しようAzure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しよう
Azure DevOpsとVisual Studio App CenterをモバイルアプリのCI/CDに活用しよう
 

More from Kazumi IWANAGA

地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれKazumi IWANAGA
 
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料Kazumi IWANAGA
 
GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月Kazumi IWANAGA
 
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsGitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsKazumi IWANAGA
 
高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道Kazumi IWANAGA
 
GitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へGitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へKazumi IWANAGA
 
突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみる突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみるKazumi IWANAGA
 
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...Kazumi IWANAGA
 
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境Kazumi IWANAGA
 
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Kazumi IWANAGA
 
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!Kazumi IWANAGA
 
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込むKazumi IWANAGA
 
女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアル女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアルKazumi IWANAGA
 
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合Kazumi IWANAGA
 
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるAzure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるKazumi IWANAGA
 
本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場を本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場をKazumi IWANAGA
 
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころKazumi IWANAGA
 
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Kazumi IWANAGA
 
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LTKazumi IWANAGA
 
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)Kazumi IWANAGA
 

More from Kazumi IWANAGA (20)

地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
 
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料GitHub dockyardコミュニティ 竣工イベント!オープニング資料
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
 
GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月
 
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsGitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
 
高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道
 
GitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へGitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へ
 
突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみる突如登場したAzure Developer CLIでなにができるのか?検証してみる
突如登場したAzure Developer CLIでなにができるのか?検証してみる
 
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Containe...
 
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
 
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
 
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
 
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
 
女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアル女性エンジニアコミュニティから見える価値観のリアル
女性エンジニアコミュニティから見える価値観のリアル
 
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
「あの人の自分戦略を聞きたい!2022」~ 大平かづみの場合
 
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整えるAzure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
Azure Functions 開発デプロイ環境を GitHub Codespaces で爆速に整える
 
本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場を本領を発揮するために、まずバリアを開放できる場を
本領を発揮するために、まずバリアを開放できる場を
 
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
 
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
 
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
「 Azure 」にデータを溜めて活用する のご紹介 - 「はじめてのNode-RED ver.1.3.0対応版」書籍出版記念イベント LT
 
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
Code Polaris 紹介(Woman type イベント「女性エンジニアのキャリアのお悩み相談室 with Code Polaris」)
 

Recently uploaded

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 

Recently uploaded (9)

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 

LINE LIFF with Azure ハンズオン資料 - Azure サービス解説

  • 1. Azure サービス解説 LINE ∞ MS Developers ミニアプリNight https://msdevjp.connpass.com/event/188224/
  • 3. Azure 陣営 Kazumi OHIRAAtsushi YOKOHAMA Microsoft MVP for AI Microsoft MVP for Azure ↑Azureもつよ強の先輩
  • 5. 今回の要件とお気持ち • LIFF (LINE Front-end Framework) を使って何かしよう! • ぜひ、静的サイトをホストするのに最適な Azure Static Web Apps をご紹介したい! • LINEログインによる情報を使って、何かできるようにしよう! • サーバレスでデータベースを使う例をご紹介したい • (Azure の高い的なイメージを払しょくしたい…!)
  • 8. 試しに、ミニゲームをつくってみた • 直前の回で選択された色を当てるゲーム • プレイヤーは自分だけとは限らない • が、センスがありませんでした… (連打するとずっと勝ち続けてしまう… (まぁ、今回はゲームの中身は重要ではないので…
  • 9. 構成 LIFF (LINE Front-end Framework) Microsoft Azure Azure Static Web Apps + Azure Functions Azure Cosmos DB
  • 10. Cosmos DB に保存するデータ構造 global-results {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} … {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} … player-results 全体のゲーム結果から、前回選択 された色を判定 ユーザーごとの結果も保持
  • 11. Azure で静的サイトをホストする Azure Static Web Apps、Azure Functions、Azure Cosmos DB
  • 12. Azure Static Web Apps • 静的フロント エンドにフォーカスした PaaS • 様々なフレームワークに対応 • Angular、React、Vue、 Svelte など多数 • 静的フロント エンドに必要な機能がそろっている • GitHub Actions を利用した CI/CD 環境 • APIなどのバックエンドとして Azure Functions が統合されている • 認証機構を簡単に利用できる • Azure AD、GitHub、Facebook、Google、Twitter によるログイン • 現在プレビュー公開中
  • 13. Azure Functions • イベント駆動のサーバレス コンピューティングプラットフォーム、FaaS • HTTPリクエストやキューなど、さまざまなイベントを起点に実行 • さまざまな言語で利用可能 • C#、JavaScript/TypeScript、Java、Python、PowerShell など • Durable Functions • ステートフルなファンクションを実装できる(待機中は無課金) • Application Insights によるモニタリング
  • 14. Azure Cosmos DB • NoSQLデータベース • 可用性が高い、スケーラブル • 性能 (≒料金)は、秒間に処理できるスループット (RU: Request Units) • データの変更を検知して処理をトリガーする Change feed が秀逸 • コマンド クエリ責務分離(CQRS)パターンの実装に最適
  • 16. GitHub Action • Azure Static Web Apps への継続的デプロイを GitHub Actions で行っている • Azure Static Web Apps Deploy · Actions · GitHub Marketplace • 他のアクションと組み合わせたり、プルリクエストなど GitHub の機能 と連携して利用できるので可能性広がる!
  • 17. Azure Functions の料金形態 • 頻繁に使わないなら従量課金プラン • ホットスタートが必要なら App Service プラン(AlwaysOn 有効) • 利用頻度が高いなら Premium プラン • 神ブログ記事 • Azure App Service の新しい Premium V3 インスタンスが使えるように なった - しばやん雑記
  • 18. Azure Cosmos DB の運用 • Free Tier • Azure Cosmos DB での開発とテストのための最適化 | Microsoft Docs • サーバーレスプラン • Azure Cosmos DB の従量課金ベースのサーバーレス プラン | Microsoft Docs • 神ブログ記事 • Azure Cosmos DB Free Tier をプロダクション環境で使う - PaaSがかり の部屋 • Hack Azure! #2 Ask the Geeks - Cosmos DB 編フォローアップ - し ばやん雑記
  • 19. Functions から Cosmos DB を使うには • Azure Functions には、イベント駆動するためのトリガーや入出力を 簡単に連携できバインドという機能がある • Azure Functions のトリガーとバインド | Microsoft Docs • より複雑な操作は SDK が便利 • JavaScript および Node.js 開発者向けの Azure | Microsoft Docs • 今回は両方使ってます
  • 20. Cosmos DB のパーティションの話 global-results {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} … {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} … player-results
  • 21. Cosmos DB のパーティションの話 global-results {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} … {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} … player-results /stage/id をパーティションキーに指定 /lineUser/id をパーティションキーに指定
  • 22. Cosmos DB のパーティションの話 global-results {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: default}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} {stage: {id: beginner-cup}, selectedColor: …} … {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user1}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} {lineUser: {id: user2}, selectedColor: …} … player-results /stage/id をパーティションキーに指定 /lineUser/id をパーティションキーに指定 パーテイションをまたがった探索 (クロスパーティション) がないよう注意! = RUを大量に消費してしまい、 金額が跳ね上がる
  • 23. Infrastructure as Code (IaC) • Azureで使うリソースは ARM テンプレートを用いて一括でデプロイ • テンプレートの概要 - Azure Resource Manager | Microsoft Docs • Terraform も Azure で利用できるが、Static Web Apps がまだ 対応してないので待ち • Azure 上の Terraform のドキュメント - チュートリアル、サンプル、リファレン ス、リソース - Terraform | Microsoft Docs