[ac07]...
TRANSCRIPT
![Page 1: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/1.jpg)
https://www.facebook.com/daisukei777/
https://twitter.com/daisukei777/
https://github.com/daisukei777/
![Page 2: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/2.jpg)
![Page 3: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/3.jpg)
![Page 4: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/4.jpg)
![Page 5: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/5.jpg)
![Page 6: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/6.jpg)
![Page 7: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/7.jpg)
![Page 8: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/8.jpg)
![Page 9: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/9.jpg)
![Page 10: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/10.jpg)
• Rolling Upgrades• Availability Guarantees• Scale Out Architecture• Resource Governance• Density• Packaging &
Deployment• Policy Enforcement• Granular Versioning• Stateful Workloads• Leader Election
![Page 11: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/11.jpg)
• Rolling Upgrades• Availability Guarantees• Scale Out Architecture• Resource Governance• Density• Packaging &
Deployment• Policy Enforcement• Granular Versioning• Stateful Workloads• Leader Election
• Mesos• Kubernetes• Zookeeper• Redis• Raven• Yarn• Fleet• Containers
?
![Page 12: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/12.jpg)
• Rolling Upgrades• Availability Guarantees• Scale Out Architecture• Resource Governance• Density• Packaging & Deployment• Policy Enforcement• Granular Versioning• Stateful Workloads• Leader Election
Service Fabric
![Page 13: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/13.jpg)
App1 App2
Orchestration - Deployments
App Type Packages
Service Fabric Cluster VMs (VMSS)
Windows Server / Linux のクラスタ構築が可能
![Page 14: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/14.jpg)
App1 App2
Orchestration - Failures
App Type Packages Service Fabric Cluster VMs (VMSS)
![Page 15: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/15.jpg)
App1 App2
Orchestration - Capacity
App Type Packages Service Fabric Cluster VMs (VMSS)
![Page 16: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/16.jpg)
App1 App2
Orchestration - Balancing
App Type Packages Service Fabric Cluster VMs (VMSS)
![Page 17: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/17.jpg)
App1 App2
Orchestration – Scale-out Service
App Type Packages Service Fabric Cluster VMs (VMSS)
![Page 18: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/18.jpg)
App1 App2
Orchestration – Scale-out Cluster
App Type PackagesService Fabric Cluster VMs (VMSS)
![Page 19: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/19.jpg)
UD3
UD2
UD1
App1 App2
Orchestration - Upgrade
App Type Packages Service Fabric Cluster VMs (VMSS)
App2.1
※ 2017/07に VMSS が自動パッチ( Windows Update )機能を提供予定
![Page 20: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/20.jpg)
![Page 21: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/21.jpg)
Demo
"capacities": {"MemoryMB": "6144","DiskMB": "90000","CPU": "100",“WorkUnits": "100",
},
ARMテンプレートに設定
![Page 22: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/22.jpg)
Azure Other CloudsOn Premise
Azure Service FabricAny OS, Any Cloud
Dev Box
Service Fabric on Linux in Azure
Preview
Service Fabric for Linux
Coming 2017
Service Fabric Windows SDK
Available
Service Fabric on Windows in Azure
Available
Service Fabric in Azure Stack GAComing 2017
Service Fabric for Windows Server
Available
Service Fabric on Linux in Azure
Available Preview
FREE*!!!!
![Page 23: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/23.jpg)
![Page 24: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/24.jpg)
Service Fabric 活用の対象
ゲートウエイ
Partner ALogicWeb
注文管理顧客管理(分析)
Cach
eショッピングカート
Partner B
Partner X
商品管理
Cacheパートナーの商品
![Page 25: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/25.jpg)
ゲートウェイ
Azure LoadBalancer
Azure API Management
IoT Hub Event Hub
主な用途 Webアプリ サービス連携 IoT IoT
Azure におけるゲートウェイの選択肢
![Page 26: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/26.jpg)
Service Fabric 活用の対象
ゲートウエイ
Partner ALogicWeb
注文管理顧客管理(分析)
Cach
eショッピングカート
Partner B
Partner X
商品管理
Cacheパートナーの商品
![Page 27: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/27.jpg)
ここを見つける
![Page 28: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/28.jpg)
ビジネス課題、組織構造や性能要求、サービスの規模に依存するのでArtであってScienceではない。ただしIndeicatorとして、サービスが小さすぎると、いろいろなところからデータを集めてくることになるので利用するが側のサービスはデータをキャッシュをしたくなる、一方、サービスが大きくなりすぎてデータを大量に持ってしまうと、それを使う側はパフォーマンスなどを考慮して自分が使いたいデータだけ切り出してキャッシュしたくなる。このようなことが多くなるとシステムが複雑になるのでサービスの切り方を検討したほうがよい。De:codeでは関連セッションがあるのでそちらも参考にしていただきたい。なおマイクロサービス化すると操作の履歴管理が煩雑になるが、Service FabricではActitvityIDで誰がどの操作を行ったかトラッキングする仕組みになっている。
別セッションを参考のこと
![Page 29: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/29.jpg)
Service Fabric 活用の対象
Partner ALogicWeb
注文管理顧客管理(分析)
Cach
eショッピングカート
Partner B
Partner X
商品管理
Cacheパートナーの商品
![Page 30: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/30.jpg)
Service Fabric 活用の対象
Partner ALogicWeb
Cach
eショッピングカート
Partner B
Partner X
Cacheパートナーの商品
注文管理
顧客管理(分析)
商品管理
![Page 31: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/31.jpg)
Service FabricProgramming Model
![Page 32: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/32.jpg)
![Page 33: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/33.jpg)
![Page 34: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/34.jpg)
![Page 35: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/35.jpg)
Full .NET Framework Any language
![Page 36: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/36.jpg)
Java, .NET Core Any language
Docker Compose (Preview)をサポート
![Page 37: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/37.jpg)
.NET Core, Full .NET, Java Any language
![Page 38: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/38.jpg)
LogicStateless
WebStateless
Cach
e
一般的なサービス
Queue
LogicStateful
WebStatelessStateful
サービス
![Page 39: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/39.jpg)
Node 1 Node 2 Node 3コピー コピー
IReliableDictionary<K,V> IReliableQueue<T>
![Page 40: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/40.jpg)
.NET collection は references を持つが Reliable Collection は objects を持つ
正常終了
using (ITransaction tx = StateManager.CreateTransaction()) {user1.LastLogin = DateTime.UtcNow; await m_dic.AddAsync(tx, name, user1);await tx.CommitAsync();
}
実行時エラー
using (ITransaction tx = StateManager.CreateTransaction()) {await m_dic.AddAsync(tx, name, user1);user1.LastLogin = DateTime.UtcNow; // Corruption!
await tx.CommitAsync(); }
![Page 41: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/41.jpg)
正常終了using (ITransaction tx = StateManager.CreateTransaction()) {
ConditionalValue<User> currentUser = await m_dic.TryGetValueAsync(tx, name);if (currentUser.HasValue) {
User updatedUser = new User(currentUser);updatedUser.LastLogin = DateTime.UtcNow;await m_dic.SetValue(tx, name, updatedUser);await tx.CommitAsync();
オブジェクトを Reliable Collection に指定した後は変更不可実行時エラー
using (ITransaction tx = StateManager.CreateTransaction()) {ConditionalValue<User> user = await m_dic.TryGetValueAsync(tx, name);if (user.HasValue) {
user.Value.LastLogin = DateTime.UtcNow; // Corruption!await tx.CommitAsync();
![Page 42: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/42.jpg)
Node 5Node 4Node 3 Node 6Node 2Node 1
P2
S
SS
P4SP1
SP3SS
S
![Page 43: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/43.jpg)
CreateServiceReplicaListeners
Node 1 Node 2 Node 3コピー コピー
![Page 44: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/44.jpg)
ProductionCluster
V1V1
V1V1
V1V1
V2V2
V2V2
V2V2
ProductionCluster
V1V1
V1V1
V1V1
V2V2
V2V2
V2V2
クラスタを削除した場合や新しく作成した場合既存の Reliable Collection は保持されない
LB
StagingCluster
V2V2
V2V2
V2V2
ProductionCluster
V1V1
V1V1
V1V1
Blue-Green Deployment
![Page 45: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/45.jpg)
バックアップ(増分)BackupDescription myBackupDescription = new
BackupDescription(backupOption.Incremental,this.BackupCallbackAsync);await this.BackupAsync(myBackupDescription);
リストア
完全と増分の2つをサポート
RestoreContext restoreCtx = New RestoreContext (……);var backupFolder = await
this.externalBackupStore.DownloadLastBackupAsync(cancellationToken); var restoreDescription = new RestoreDescription(backupFolder); await restoreCtx.RestoreAsync(restoreDescription);
![Page 46: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/46.jpg)
Service Fabric 活用の対象
Partner ALogicWeb
Cach
eショッピングカート
Partner B
Partner X
Cacheパートナーの商品
注文管理
顧客管理(分析)
商品管理
![Page 47: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/47.jpg)
Service Fabric
Partner A
Web Partner B
Partner X
注文管理
顧客管理(分析)
商品管理ショッピングカート パートナー商品
Stateful
Stateless
![Page 48: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/48.jpg)
ASP.Core とサポート対象の Web サーバー
WebListener (Windows での推奨)
(Web API 2 only)
現時点では未サポート)
ASP.NET や IIS は未サポートなのでアプリの修正が必要
![Page 49: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/49.jpg)
![Page 50: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/50.jpg)
Service Fabric
Partner A
Web Partner B
Partner X
注文管理
顧客管理(分析)
商品管理ショッピングカート パートナー商品
Stateful
Stateless
Web(Container)
ASP.NET Core : アプリケーションの新規作成Container : 既存アプリの移行
![Page 51: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/51.jpg)
サービス間の通信Stateful, Stateless, Container
Azure Service Fabric はサービス間の通信にまったく依存しません。UDP から HTTP まで、あらゆるプロトコルとスタックに対応します。
![Page 52: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/52.jpg)
サービスは論理構成なのでアドレスは持たない
Node 310.0.0.3
Node 410.0.0.4
Node 110.0.0.1
Replica
Node 210.0.0.2
Node 510.0.0.5
Replica Replica ReplicaReplica
Replica Replica Replica Replica Replica
![Page 53: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/53.jpg)
Service Registry / Service Discovery
farbric://OnlineShopping/Product
Naming Servicefarbric://OnlineShopping/Product
http://10.0.0.1:8081/api/
①私のアドレスを登録してくださいhttp://10.0.0.1:8081/api/
farbric://OnlineShopping/Order②farbric://OnlineShopping/Product
のアドレスをください。
http://10.0.0.1:8081/api/
③ http://10.0.0.1:8081/api/ に接続
![Page 54: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/54.jpg)
protected override IEnumerable<ServiceReplicaListener>CreateServiceReplicaListeners()
{return new List<ServiceReplicaListener>(){
new ServiceReplicaListener(context =>this.CreateServiceRemotingListener(context),"RpcOnlienShoppingProduct",true) // 読み取り可能セカンダリの設定
};}
Reliable Services でサービスのエンドポイントを公開
![Page 55: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/55.jpg)
特定のプロトコルが決まってない場合は ServiceProxy が便利
IMyService ProductClient =ServiceProxy.Create<IMyService>(new
Uri("farbric://OnlineShopping/Product”));
string message = await Product.getProdcts();
サービス アドレスの解決、接続、再試行、エラー処理などの機能が含まれる。
![Page 56: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/56.jpg)
Service Fabric cluster
Web(Container)
注文管理ショッピングカート
![Page 57: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/57.jpg)
全ノードで実行されクライアント要求を適切なサービスに転送
farbric://OnlineShopping/Web
Node 1
Reverse Proxy
①http://localhost:19008/OnlineShopping/Product
Node 2
farbric://OnlineShopping/Product
http://10.0.0.1:8081/api/
②リクエストを適切なサービスに転送
※アプリ名/サービス名を指定
![Page 58: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/58.jpg)
Service Fabric cluster
Web(Container)
Reverse Proxy
注文管理ショッピングカート
![Page 59: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/59.jpg)
既存技術をそのまま活用可能
farbric://OnlineShopping/Product
DNSfarbric://OnlineShopping/
Productweb.onlineshopping
①私のアドレス( http://10.0.0.1:8081/api/ )とDNS名(web.onlineshopping)を登録してください
farbric://OnlineShopping/Web②web.onlineshopping
のアドレスをください。
http://10.0.0.1:8081/api/
③ http://10.0.0.1:8081/api/ に接続
Naming Service
![Page 60: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/60.jpg)
Service Fabric
Partner A
Web Partner B
Partner X
注文管理
顧客管理(分析)
商品管理ショッピングカート 商品カタログ
Stateful
Stateless
Web(Container)
Deployment Rolling Upgradeリソース管理フェールオーバー
※ ASP.NET Core : アプリケーションの新規作成Container : 既存アプリの移行は
![Page 61: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/61.jpg)
セッションアンケートにご協力ください
専用アプリからご回答いただけます。
decode 2017
スケジュールビルダーで受講セッションを登録後、アンケート画面からご回答ください。
アンケートの回答時間はたったの 15 秒です!
![Page 62: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/62.jpg)
Ask the Speaker のご案内本セッションの詳細は『Ask the Speaker Room』各コーナーカウンタにてご説明させていただきます。是非、お立ち寄りください。
![Page 63: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/63.jpg)
© 2017 Microsoft Corporation. All rights reserved.
本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。
![Page 64: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/64.jpg)
パラメータ 意味http (s) HTTP または HTTPS トラフィックを受け入れるCluster FQDN (完全修飾ドメイン名) | internal IP
外部クライアントからFQDNで Reverse Proxy にアクセス可能(VPN必須)
Port: リバースプロキシのポート(Default:19008)ServiceInstanceName: サービス インスタンスの完全修飾名Suffix path: 接続先となるサービスの実際の URL パスPartitionKey: パーティション分割されたサービスの場合のパーティション キーPartitionKind: サービス パーティション構成。、“Int64Range” または “Named” を指定。ListenerName サービスが複数のエンドポイントを公開している場合に転送先を特定TargetReplicaSelector ターゲット レプリカまたはインスタンスの選択方法を指定。
"PrimaryReplica"、"RandomSecondaryReplica"、"RandomReplica"Timeout リバース プロキシによって作成される、サービスに対する HTTP 要求のタイムア
ウト。既定値は 60 秒
![Page 65: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/65.jpg)
VM コンテナ / Service Fabric
低密度 高い密度
![Page 66: [AC07] 米国マイクロソフト本社で体験したノウハウを伝授!マイクロサービス実行基盤Azure Service Fabricの勘所](https://reader038.vdocuments.site/reader038/viewer/2022102720/5a6478857f8b9a27568b462d/html5/thumbnails/66.jpg)