SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Azure Web Pub Sub Serviceを触ってみた
2021.06 .NETラボ
誰?
Takas(@DevTakas)
Angular / Azure / .NET Core / Azure DevOps / Microsoft Graph
Microsoft MVP Office Development
誰?
ブログやってます
http://takasdev.hatenablog.com/
「はまったりひらめいたり…とか…」
※注意
Azure Web PubSub Serviceは
プレビューです
(6/26現在)
おしながき
1. Azure Web PubSub Serviceとは?
2. Azure Web PubSub Serviceを体験してみる
3. Azure Web PubSub Serviceで開発をしてみる
4. まとめ
1. Azure Web PubSub Serviceとは?
1. Azure Web PubSub Serviceとは?
- サービスの概要
• 名前の通りPub/Subパターンモデルのサービス
• メッセージブローカーにあたる
• WebSocketを使用したリアルタイムWebアプリケーションを
構築する
• 大量のリクエスト・同時接続を解決する
1. Azure Web Pub Sub Serviceとは?
- 価格
無料プラン Standard
ユニットあたりの同時接続数 20 1,000
1ユニットあたりの
1日のメッセージ数
20,000 無制限
※最初の1,000,000メッセージは無料
料金/ユニット/日 無料 180.320
最大ユニット数 1 100
• 最大接続数:1,000(同時接続) * 100(ユニット) = 10万同時接続
• Standardで1,000,000メッセージ以上は追加課金112
• 1,000,000メッセージはだいたい2GB相当
※すべて日本円
1. Azure Web PubSub Serviceとは?
- ドキュメント
• リリースブログ
• 概要などを手っ取り早くおさえるならこれ
• https://azure.microsoft.com/ja-jp/blog/easily-build-realtime-apps-
with-websockets-and-azure-web-pubsub-now-in-preview/
• Docs
• 日本語訳があるほうはこっち
• https://docs.microsoft.com/ja-jp/azure/azure-web-pubsub/
• Azure Web PubSub Service
• たぶんDocsよりこっちのほうが今はまとまっている?
• https://azure.github.io/azure-webpubsub/
1. Azure Web PubSub Serviceとは?
- ユースケース
• 頻度の高いデータの更新
• ゲーム、投票、ポーリング、オーク損
• ライブダッシュボードと監視
• 会社のダッシュボード、金融市場のデータ、売上の即時更新、マルチ プレイヤー ゲームのスコア ボード、および IoT 監視
• クロスプラットフォームのライブ チャット
• ライブ チャット ルーム、チャット ボット、オンライン カスタマー サポート、リアルタイムのショッピング アシスタント、メッセンジャー、ゲーム内
チャットなど
• 地図上のリアルタイムの位置
• 物流の追跡、配送状態の追跡、輸送状態の更新、GPS アプリ
• 対象を絞ったリアルタイムの広告
• パーソナライズされたリアルタイムのプッシュ型広告およびオファー、対話型広告。
• コラボレーション アプリ
• 共同作成、ホワイトボード アプリ、チーム会議ソフトウェア。
• プッシュ型のインスタント通知
• ソーシャル ネットワーク、電子メール、ゲーム、移動に関するアラート。
• リアルタイムのブロードキャスト
• ライブ オーディオ/ビデオのブロードキャスト、ライブ キャプション、翻訳、イベント/ニュースのブロードキャスト。
• IoT デバイスおよび接続されているデバイス
• リアルタイムの IoT メトリック、リモート制御、リアルタイムの状態、および場所の追跡。
• オートメーション
• アップストリーム イベントからのリアルタイム トリガー
1. Azure Web PubSub Serviceとは?
-SignalR…🤔?
https://twitter.com/davidfowl/status/1387885009625780228
1. Azure Web PubSub Serviceとは?
-SignalR…🤔?
• SignalR ServiceはサービスがWebSocketのエンドポイントを
提供していた
• 対してWeb PubSubは単なるWebSocket
• SignalRで要求される再接続などがPubSubの場合必要なくなる
• SinalRServiceがなくなるというわけではない
• 使えない環境に対応するためのよりシンプルなサービスのイメージ
• SignalR Serviceを使い続けたほうが良い場合も当然ある
• WebSocket以外のフォールバックトランスポートが欲しい場合
• RPCやStreamingを使用したい場合。。。などなど
• より詳細な場合分けは👇のTwitterのスレッドで確認することができる
• https://twitter.com/davidfowl/status/1387885009625780228
1. Azure Web PubSub Serviceとは?
-SignalR…🤔?
• 価格設定はまったく同じとなっている
2. Azure Web PubSub Serviceを体験してみる
2. Azure Web PubSub Serviceを体験してみる
-なにはともあれリソースを作成する
2. Azure Web PubSub Serviceを体験してみる
-サンプルを動かしてみる
• Demoがあるのでそこで簡単に動作を確認することができる
• https://azure.github.io/azure-webpubsub/demos/clientpubsub
2. Azure Web PubSub Serviceを体験してみる
-なにはともあれリソースを作成する
• 動きと何をしなければいけないかはある程度把握できた
• 必要なのは接続文字列
• Groupを作成しそこに参加する形でメッセージをやり取りする
• 同一のGroup同士でメッセージのやり取りがおこなえる
3. Azure Web PubSub Serviceで開発をしてみる
3. Azure Web PubSub Serviceで開発をしてみる
-必要な概念を抑えておく
• 必要な概念を抑える
• サービス
• Azure Web PubSub Service
• サーバー
• クライアント
• グループ
• クライアントが参加しメッセージを公開する先
• メッセージ
• サービス/グループに送付するデータ、文字列/JSON/Binary
• 1MBまで
3. Azure Web PubSub Serviceで開発をしてみる
-Serverの役割など
• Server SDKは下記の環境のものが現在用意されている
• JavaScript
• C#
• Python
• Java
• ServerはSDKを通して下記のことなどが行える
• クライアント用のWebSocketUriの生成
• グループ作成可能などRole情報を付与したアクセストークンも生成
• ソケット通信で使用するGroupやUserの作成が可能
• グループ宛/全体宛にメッセージを送信
3. Azure Web PubSub Serviceで開発をしてみる
-クライアント側
• 標準のWebSocket APIでメッセージを送受信できる
• JSのWebSocket
• C#のWebsocketClient
• などなど
• サーバーで生成されたAccessTokenを通信に付与
• JSONメッセージを送ることでユーザーやグループを作成可能
3. Azure Web PubSub Serviceで開発をしてみる
-Azure Functionsでイベント駆動する
• Connect/Connected/Disconnectのバインド可能
• とある条件の場合は拒否。とかできる。
• 送信されたメッセージをトリガーにバインド可能
• 使用するにはアクセスできるエンドポイントと設定が必要
3. Azure Web PubSub Serviceで開発をしてみる
-動作フローをまとめてみる
まとめ
• 現在Preview中のAzure Web PubSub Serviceを触ってみた
• SignalRとはユースケースを考慮した上で選定する必要あり
• Web標準のWebSocket APIで通信可能
• Server側の処理はSDKを使うのが一番ラク
• Functionsのイベント駆動も便利に使用できそう
参考ページ
• WebSocket と Azure Web PubSub を使用してリアルタイム アプリを簡単に構築する (プレビュー段階)
• https://azure.microsoft.com/ja-jp/blog/easily-build-realtime-apps-with-websockets-and-azure-web-pubsub-now-in-preview/
• パブリッシャーとサブスクライバーのパターン
• https://docs.microsoft.com/ja-jp/azure/architecture/patterns/publisher-subscriber
• 価格
• https://azure.microsoft.com/ja-jp/pricing/details/web-pubsub/
• Azure Web PubSub サービスに関するドキュメント
• https://docs.microsoft.com/ja-jp/azure/azure-web-pubsub/
• Azure Web PubSub Service
• https://azure.github.io/azure-webpubsub/
• Azure/azure-webpubsub
• https://github.com/Azure/azure-webpubsub
• New Azure Web PubSub Unveiled for Real-time WebSocket Apps
• https://visualstudiomagazine.com/articles/2021/04/29/azure-web-pubsub.aspx
• How is it different from SignalR you ask?
• https://twitter.com/davidfowl/status/1387885009625780228
• WebSocket
• https://developer.mozilla.org/ja/docs/Web/API/WebSocket

Weitere ähnliche Inhalte

Was ist angesagt?

はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-Saki Homma
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13Amazon Web Services Japan
 
Cognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようCognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようShuto Suzuki
 
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春VerMasahito Zembutsu
 
AWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティスAWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティスAmazon Web Services Japan
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Amazon Web Services Japan
 
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)NTT DATA Technology & Innovation
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAkihiro Kuwano
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドAkihiro Suda
 
Kubernetesを使う上で抑えておくべきAWSの基礎概念
Kubernetesを使う上で抑えておくべきAWSの基礎概念Kubernetesを使う上で抑えておくべきAWSの基礎概念
Kubernetesを使う上で抑えておくべきAWSの基礎概念Shinya Mori (@mosuke5)
 
組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontends組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontendsPIXTA Inc.
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門Hiroyuki Wada
 
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化DeNA
 
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会ShuheiUda
 

Was ist angesagt? (20)

はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
 
Cognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようCognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しよう
 
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver
 
AWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティスAWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティス
 
Serverless時代のJavaについて
Serverless時代のJavaについてServerless時代のJavaについて
Serverless時代のJavaについて
 
DevOps with Database on AWS
DevOps with Database on AWSDevOps with Database on AWS
DevOps with Database on AWS
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
 
Kubernetesを使う上で抑えておくべきAWSの基礎概念
Kubernetesを使う上で抑えておくべきAWSの基礎概念Kubernetesを使う上で抑えておくべきAWSの基礎概念
Kubernetesを使う上で抑えておくべきAWSの基礎概念
 
組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontends組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontends
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門
 
AWS BlackBelt AWS上でのDDoS対策
AWS BlackBelt AWS上でのDDoS対策AWS BlackBelt AWS上でのDDoS対策
AWS BlackBelt AWS上でのDDoS対策
 
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化
 
Google Cloud で実践する SRE
Google Cloud で実践する SRE  Google Cloud で実践する SRE
Google Cloud で実践する SRE
 
Azure Network 概要
Azure Network 概要Azure Network 概要
Azure Network 概要
 
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
 

Ähnlich wie Azure Web PubSub Serviceを触ってみた

Azure functions
Azure functionsAzure functions
Azure functionsvivek p s
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples Yochay Kiriaty
 
Pragmatic adoption of serverless at umbraco
Pragmatic adoption of serverless at umbracoPragmatic adoption of serverless at umbraco
Pragmatic adoption of serverless at umbracoMorten Christensen
 
Brewing Beer with Windows Azure - ASPConf
Brewing Beer with Windows Azure - ASPConfBrewing Beer with Windows Azure - ASPConf
Brewing Beer with Windows Azure - ASPConfMaarten Balliauw
 
Azure web functions little bites of services
Azure web functions little bites of servicesAzure web functions little bites of services
Azure web functions little bites of servicesAaron Petry
 
Azure for beginners series session 4
Azure for beginners series session 4Azure for beginners series session 4
Azure for beginners series session 4Lalit Rawat
 
Microsoft Azure News - 2018 December
Microsoft Azure News - 2018 DecemberMicrosoft Azure News - 2018 December
Microsoft Azure News - 2018 DecemberDaniel Toomey
 
Gab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptx
Gab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptxGab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptx
Gab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptxVincent Thavonekham-Pro
 
The hidden secrets of azure networking
The hidden secrets of azure networkingThe hidden secrets of azure networking
The hidden secrets of azure networkingMohamed Wali
 
Automating Your Azure Environment
Automating Your Azure EnvironmentAutomating Your Azure Environment
Automating Your Azure EnvironmentMichael Collier
 
Making Sense of Serverless Computing
Making Sense of Serverless ComputingMaking Sense of Serverless Computing
Making Sense of Serverless ComputingBruno Borges
 
DNN & The CloudOS: Windows Azure on your terms
DNN & The CloudOS: Windows Azure on your termsDNN & The CloudOS: Windows Azure on your terms
DNN & The CloudOS: Windows Azure on your termsJess Coburn
 
ITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdf
ITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdfITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdf
ITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdfOrtus Solutions, Corp
 
Play with azure functions
Play with azure functionsPlay with azure functions
Play with azure functionsBaskar rao Dsn
 
Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?Daniel Zivkovic
 
First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)Daniel Toomey
 
Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)Vincent Biret
 
Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)Vincent Biret
 
Saltconf16 william-cannon b
Saltconf16 william-cannon bSaltconf16 william-cannon b
Saltconf16 william-cannon bWilliam Cannon
 

Ähnlich wie Azure Web PubSub Serviceを触ってみた (20)

Azure functions
Azure functionsAzure functions
Azure functions
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples
 
Pragmatic adoption of serverless at umbraco
Pragmatic adoption of serverless at umbracoPragmatic adoption of serverless at umbraco
Pragmatic adoption of serverless at umbraco
 
Brewing Beer with Windows Azure - ASPConf
Brewing Beer with Windows Azure - ASPConfBrewing Beer with Windows Azure - ASPConf
Brewing Beer with Windows Azure - ASPConf
 
Azure web functions little bites of services
Azure web functions little bites of servicesAzure web functions little bites of services
Azure web functions little bites of services
 
Azure for beginners series session 4
Azure for beginners series session 4Azure for beginners series session 4
Azure for beginners series session 4
 
Microsoft Azure News - 2018 December
Microsoft Azure News - 2018 DecemberMicrosoft Azure News - 2018 December
Microsoft Azure News - 2018 December
 
Gab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptx
Gab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptxGab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptx
Gab2015 nicolas fonrose_costefficiencywithmicrosoftazure.pptx
 
The hidden secrets of azure networking
The hidden secrets of azure networkingThe hidden secrets of azure networking
The hidden secrets of azure networking
 
Automating Your Azure Environment
Automating Your Azure EnvironmentAutomating Your Azure Environment
Automating Your Azure Environment
 
Making Sense of Serverless Computing
Making Sense of Serverless ComputingMaking Sense of Serverless Computing
Making Sense of Serverless Computing
 
DNN & The CloudOS: Windows Azure on your terms
DNN & The CloudOS: Windows Azure on your termsDNN & The CloudOS: Windows Azure on your terms
DNN & The CloudOS: Windows Azure on your terms
 
ITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdf
ITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdfITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdf
ITB_2023_Create_as_many_web_sites_or_web_apps_as_you_want_George_Murphy.pdf
 
Play with azure functions
Play with azure functionsPlay with azure functions
Play with azure functions
 
Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?
 
First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)First Look at Azure Logic Apps (BAUG)
First Look at Azure Logic Apps (BAUG)
 
Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)
 
Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)
 
Saltconf16 william-cannon b
Saltconf16 william-cannon bSaltconf16 william-cannon b
Saltconf16 william-cannon b
 
ASP.NET MVC - Latest & Greatest So Far
ASP.NET MVC - Latest & Greatest So FarASP.NET MVC - Latest & Greatest So Far
ASP.NET MVC - Latest & Greatest So Far
 

Mehr von DevTakas

Microsoft Graph Toolkitで手軽にM365フロント開発
Microsoft Graph Toolkitで手軽にM365フロント開発Microsoft Graph Toolkitで手軽にM365フロント開発
Microsoft Graph Toolkitで手軽にM365フロント開発DevTakas
 
Azure Artifactsを触ってみよう
Azure Artifactsを触ってみようAzure Artifactsを触ってみよう
Azure Artifactsを触ってみようDevTakas
 
Microsoft Graph Toolkitを使ってGraph開発を体験しよう
 Microsoft Graph Toolkitを使ってGraph開発を体験しよう Microsoft Graph Toolkitを使ってGraph開発を体験しよう
Microsoft Graph Toolkitを使ってGraph開発を体験しようDevTakas
 
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編DevTakas
 
Azure ADアプリケーションを使用した認証のあれやこれ
Azure ADアプリケーションを使用した認証のあれやこれAzure ADアプリケーションを使用した認証のあれやこれ
Azure ADアプリケーションを使用した認証のあれやこれDevTakas
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうDevTakas
 
Microsoft Graphのことはじめ
Microsoft GraphのことはじめMicrosoft Graphのことはじめ
Microsoft GraphのことはじめDevTakas
 
Azure Event HubsでGraph変更通知を受け取る
Azure Event HubsでGraph変更通知を受け取るAzure Event HubsでGraph変更通知を受け取る
Azure Event HubsでGraph変更通知を受け取るDevTakas
 
msal.js v2を触る
msal.js v2を触るmsal.js v2を触る
msal.js v2を触るDevTakas
 
僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)
僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)
僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)DevTakas
 
TeamsのチャネルとやりとりするWeb Applicationを作ったお話
TeamsのチャネルとやりとりするWeb Applicationを作ったお話TeamsのチャネルとやりとりするWeb Applicationを作ったお話
TeamsのチャネルとやりとりするWeb Applicationを作ったお話DevTakas
 
Azure AD Application を使用した認証のアレコレ
Azure AD Applicationを使用した認証のアレコレAzure AD Applicationを使用した認証のアレコレ
Azure AD Application を使用した認証のアレコレDevTakas
 
Microsoft Graphの変更通知で遊ぶ
Microsoft Graphの変更通知で遊ぶMicrosoft Graphの変更通知で遊ぶ
Microsoft Graphの変更通知で遊ぶDevTakas
 
Microsoft Graphを使ってアプリケーションを作った時の話
Microsoft Graphを使ってアプリケーションを作った時の話Microsoft Graphを使ってアプリケーションを作った時の話
Microsoft Graphを使ってアプリケーションを作った時の話DevTakas
 
Microsoft Graphことはじめ クエリパラメータ編
Microsoft Graphことはじめ クエリパラメータ編Microsoft Graphことはじめ クエリパラメータ編
Microsoft Graphことはじめ クエリパラメータ編DevTakas
 
Microsoft Graph完全に理解した気がしてた
Microsoft Graph完全に理解した気がしてたMicrosoft Graph完全に理解した気がしてた
Microsoft Graph完全に理解した気がしてたDevTakas
 
AzureADの認証で失敗した話
AzureADの認証で失敗した話AzureADの認証で失敗した話
AzureADの認証で失敗した話DevTakas
 
msal.jsを使う
msal.jsを使うmsal.jsを使う
msal.jsを使うDevTakas
 

Mehr von DevTakas (18)

Microsoft Graph Toolkitで手軽にM365フロント開発
Microsoft Graph Toolkitで手軽にM365フロント開発Microsoft Graph Toolkitで手軽にM365フロント開発
Microsoft Graph Toolkitで手軽にM365フロント開発
 
Azure Artifactsを触ってみよう
Azure Artifactsを触ってみようAzure Artifactsを触ってみよう
Azure Artifactsを触ってみよう
 
Microsoft Graph Toolkitを使ってGraph開発を体験しよう
 Microsoft Graph Toolkitを使ってGraph開発を体験しよう Microsoft Graph Toolkitを使ってGraph開発を体験しよう
Microsoft Graph Toolkitを使ってGraph開発を体験しよう
 
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編
Azure ADアプリケーションを使用した認証のあれやこれ ASP.NET Core編
 
Azure ADアプリケーションを使用した認証のあれやこれ
Azure ADアプリケーションを使用した認証のあれやこれAzure ADアプリケーションを使用した認証のあれやこれ
Azure ADアプリケーションを使用した認証のあれやこれ
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おう
 
Microsoft Graphのことはじめ
Microsoft GraphのことはじめMicrosoft Graphのことはじめ
Microsoft Graphのことはじめ
 
Azure Event HubsでGraph変更通知を受け取る
Azure Event HubsでGraph変更通知を受け取るAzure Event HubsでGraph変更通知を受け取る
Azure Event HubsでGraph変更通知を受け取る
 
msal.js v2を触る
msal.js v2を触るmsal.js v2を触る
msal.js v2を触る
 
僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)
僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)
僕はあなたを監視する(MS Graph Subscriptionのβで公開されたpresencesを使おう!)
 
TeamsのチャネルとやりとりするWeb Applicationを作ったお話
TeamsのチャネルとやりとりするWeb Applicationを作ったお話TeamsのチャネルとやりとりするWeb Applicationを作ったお話
TeamsのチャネルとやりとりするWeb Applicationを作ったお話
 
Azure AD Application を使用した認証のアレコレ
Azure AD Applicationを使用した認証のアレコレAzure AD Applicationを使用した認証のアレコレ
Azure AD Application を使用した認証のアレコレ
 
Microsoft Graphの変更通知で遊ぶ
Microsoft Graphの変更通知で遊ぶMicrosoft Graphの変更通知で遊ぶ
Microsoft Graphの変更通知で遊ぶ
 
Microsoft Graphを使ってアプリケーションを作った時の話
Microsoft Graphを使ってアプリケーションを作った時の話Microsoft Graphを使ってアプリケーションを作った時の話
Microsoft Graphを使ってアプリケーションを作った時の話
 
Microsoft Graphことはじめ クエリパラメータ編
Microsoft Graphことはじめ クエリパラメータ編Microsoft Graphことはじめ クエリパラメータ編
Microsoft Graphことはじめ クエリパラメータ編
 
Microsoft Graph完全に理解した気がしてた
Microsoft Graph完全に理解した気がしてたMicrosoft Graph完全に理解した気がしてた
Microsoft Graph完全に理解した気がしてた
 
AzureADの認証で失敗した話
AzureADの認証で失敗した話AzureADの認証で失敗した話
AzureADの認証で失敗した話
 
msal.jsを使う
msal.jsを使うmsal.jsを使う
msal.jsを使う
 

Kürzlich hochgeladen

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Kürzlich hochgeladen (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Azure Web PubSub Serviceを触ってみた

  • 1. Azure Web Pub Sub Serviceを触ってみた 2021.06 .NETラボ
  • 2. 誰? Takas(@DevTakas) Angular / Azure / .NET Core / Azure DevOps / Microsoft Graph Microsoft MVP Office Development
  • 4. ※注意 Azure Web PubSub Serviceは プレビューです (6/26現在)
  • 5. おしながき 1. Azure Web PubSub Serviceとは? 2. Azure Web PubSub Serviceを体験してみる 3. Azure Web PubSub Serviceで開発をしてみる 4. まとめ
  • 6. 1. Azure Web PubSub Serviceとは?
  • 7. 1. Azure Web PubSub Serviceとは? - サービスの概要 • 名前の通りPub/Subパターンモデルのサービス • メッセージブローカーにあたる • WebSocketを使用したリアルタイムWebアプリケーションを 構築する • 大量のリクエスト・同時接続を解決する
  • 8. 1. Azure Web Pub Sub Serviceとは? - 価格 無料プラン Standard ユニットあたりの同時接続数 20 1,000 1ユニットあたりの 1日のメッセージ数 20,000 無制限 ※最初の1,000,000メッセージは無料 料金/ユニット/日 無料 180.320 最大ユニット数 1 100 • 最大接続数:1,000(同時接続) * 100(ユニット) = 10万同時接続 • Standardで1,000,000メッセージ以上は追加課金112 • 1,000,000メッセージはだいたい2GB相当 ※すべて日本円
  • 9. 1. Azure Web PubSub Serviceとは? - ドキュメント • リリースブログ • 概要などを手っ取り早くおさえるならこれ • https://azure.microsoft.com/ja-jp/blog/easily-build-realtime-apps- with-websockets-and-azure-web-pubsub-now-in-preview/ • Docs • 日本語訳があるほうはこっち • https://docs.microsoft.com/ja-jp/azure/azure-web-pubsub/ • Azure Web PubSub Service • たぶんDocsよりこっちのほうが今はまとまっている? • https://azure.github.io/azure-webpubsub/
  • 10. 1. Azure Web PubSub Serviceとは? - ユースケース • 頻度の高いデータの更新 • ゲーム、投票、ポーリング、オーク損 • ライブダッシュボードと監視 • 会社のダッシュボード、金融市場のデータ、売上の即時更新、マルチ プレイヤー ゲームのスコア ボード、および IoT 監視 • クロスプラットフォームのライブ チャット • ライブ チャット ルーム、チャット ボット、オンライン カスタマー サポート、リアルタイムのショッピング アシスタント、メッセンジャー、ゲーム内 チャットなど • 地図上のリアルタイムの位置 • 物流の追跡、配送状態の追跡、輸送状態の更新、GPS アプリ • 対象を絞ったリアルタイムの広告 • パーソナライズされたリアルタイムのプッシュ型広告およびオファー、対話型広告。 • コラボレーション アプリ • 共同作成、ホワイトボード アプリ、チーム会議ソフトウェア。 • プッシュ型のインスタント通知 • ソーシャル ネットワーク、電子メール、ゲーム、移動に関するアラート。 • リアルタイムのブロードキャスト • ライブ オーディオ/ビデオのブロードキャスト、ライブ キャプション、翻訳、イベント/ニュースのブロードキャスト。 • IoT デバイスおよび接続されているデバイス • リアルタイムの IoT メトリック、リモート制御、リアルタイムの状態、および場所の追跡。 • オートメーション • アップストリーム イベントからのリアルタイム トリガー
  • 11. 1. Azure Web PubSub Serviceとは? -SignalR…🤔? https://twitter.com/davidfowl/status/1387885009625780228
  • 12. 1. Azure Web PubSub Serviceとは? -SignalR…🤔? • SignalR ServiceはサービスがWebSocketのエンドポイントを 提供していた • 対してWeb PubSubは単なるWebSocket • SignalRで要求される再接続などがPubSubの場合必要なくなる • SinalRServiceがなくなるというわけではない • 使えない環境に対応するためのよりシンプルなサービスのイメージ • SignalR Serviceを使い続けたほうが良い場合も当然ある • WebSocket以外のフォールバックトランスポートが欲しい場合 • RPCやStreamingを使用したい場合。。。などなど • より詳細な場合分けは👇のTwitterのスレッドで確認することができる • https://twitter.com/davidfowl/status/1387885009625780228
  • 13. 1. Azure Web PubSub Serviceとは? -SignalR…🤔? • 価格設定はまったく同じとなっている
  • 14. 2. Azure Web PubSub Serviceを体験してみる
  • 15. 2. Azure Web PubSub Serviceを体験してみる -なにはともあれリソースを作成する
  • 16. 2. Azure Web PubSub Serviceを体験してみる -サンプルを動かしてみる • Demoがあるのでそこで簡単に動作を確認することができる • https://azure.github.io/azure-webpubsub/demos/clientpubsub
  • 17. 2. Azure Web PubSub Serviceを体験してみる -なにはともあれリソースを作成する • 動きと何をしなければいけないかはある程度把握できた • 必要なのは接続文字列 • Groupを作成しそこに参加する形でメッセージをやり取りする • 同一のGroup同士でメッセージのやり取りがおこなえる
  • 18. 3. Azure Web PubSub Serviceで開発をしてみる
  • 19. 3. Azure Web PubSub Serviceで開発をしてみる -必要な概念を抑えておく • 必要な概念を抑える • サービス • Azure Web PubSub Service • サーバー • クライアント • グループ • クライアントが参加しメッセージを公開する先 • メッセージ • サービス/グループに送付するデータ、文字列/JSON/Binary • 1MBまで
  • 20. 3. Azure Web PubSub Serviceで開発をしてみる -Serverの役割など • Server SDKは下記の環境のものが現在用意されている • JavaScript • C# • Python • Java • ServerはSDKを通して下記のことなどが行える • クライアント用のWebSocketUriの生成 • グループ作成可能などRole情報を付与したアクセストークンも生成 • ソケット通信で使用するGroupやUserの作成が可能 • グループ宛/全体宛にメッセージを送信
  • 21. 3. Azure Web PubSub Serviceで開発をしてみる -クライアント側 • 標準のWebSocket APIでメッセージを送受信できる • JSのWebSocket • C#のWebsocketClient • などなど • サーバーで生成されたAccessTokenを通信に付与 • JSONメッセージを送ることでユーザーやグループを作成可能
  • 22. 3. Azure Web PubSub Serviceで開発をしてみる -Azure Functionsでイベント駆動する • Connect/Connected/Disconnectのバインド可能 • とある条件の場合は拒否。とかできる。 • 送信されたメッセージをトリガーにバインド可能 • 使用するにはアクセスできるエンドポイントと設定が必要
  • 23. 3. Azure Web PubSub Serviceで開発をしてみる -動作フローをまとめてみる
  • 24. まとめ • 現在Preview中のAzure Web PubSub Serviceを触ってみた • SignalRとはユースケースを考慮した上で選定する必要あり • Web標準のWebSocket APIで通信可能 • Server側の処理はSDKを使うのが一番ラク • Functionsのイベント駆動も便利に使用できそう
  • 25. 参考ページ • WebSocket と Azure Web PubSub を使用してリアルタイム アプリを簡単に構築する (プレビュー段階) • https://azure.microsoft.com/ja-jp/blog/easily-build-realtime-apps-with-websockets-and-azure-web-pubsub-now-in-preview/ • パブリッシャーとサブスクライバーのパターン • https://docs.microsoft.com/ja-jp/azure/architecture/patterns/publisher-subscriber • 価格 • https://azure.microsoft.com/ja-jp/pricing/details/web-pubsub/ • Azure Web PubSub サービスに関するドキュメント • https://docs.microsoft.com/ja-jp/azure/azure-web-pubsub/ • Azure Web PubSub Service • https://azure.github.io/azure-webpubsub/ • Azure/azure-webpubsub • https://github.com/Azure/azure-webpubsub • New Azure Web PubSub Unveiled for Real-time WebSocket Apps • https://visualstudiomagazine.com/articles/2021/04/29/azure-web-pubsub.aspx • How is it different from SignalR you ask? • https://twitter.com/davidfowl/status/1387885009625780228 • WebSocket • https://developer.mozilla.org/ja/docs/Web/API/WebSocket