Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Durable Functionsを"公式ドキュメントとは違う形で"話して見る
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yu_ka1984
July 18, 2018
Technology
920
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Durable Functionsを"公式ドキュメントとは違う形で"話して見る
第13回 Tokyo Jazui Night 2018/07/18
Yu_ka1984
July 18, 2018
Transcript
57 slides
Durable Func,ons “ J 8” 7 0/30 ( 2 )
1
• twitter : @yu_ka1984 • • $ (
• !&" Azure%' # • Medium https://medium.com/@yuka1984 • $ http://tamafuyou.hatenablog.com/
None
• Durable Functions • Durable Functions •
• • Durable Func-ons •
• Azure Functions / •
"%+(, Durable FunctionsAzure Functions# -*! .Durable Functions( Azure Functions0&$' )&
Durable Functions 4 1. 2 32 4. 2 32 4.
4 . . . 4. 34 . 1. 4. 34 . 13
Durable Functions3 • Activity • ! API
DB • Orchestrator • Activity # Activity$ ! • Starter • Orchestrator "
Activity h"ps://gist.github.com/yuka1984/4df7d7f8b44357f3d4a4b23be46fdce2
Orchestrator https://gist.github.com/yuka1984/347bead2c0720ab1c4de3e8ca9ea91d 5
Starter https://gist.github.com/yuka1984/42af948abb75892461c2a206f8ff5b87
Durable Functions • (&%# (&%#$ Orchestrator/41+
• '# '#$ Activity/41+ • $!% OrchestratorActivity 1+586; • ((!% 37 Orchestrator 1+9:6; • "!&! ActivityOrchestrator .*0 ) -, !&! 2<
Starter48G OrchestratorD6 !0'.- +G +*%$"0
+ (#',&)-OrchestratorD6@F !0'.- + +',Orchestrator48G CallAc.vity4852/ +*%$"(Ac.vity?9G1 78E)0 + / +',Orchestrator ;3 Ac.vity4852 Aci.vity52>B(#',&)-@F !0'.- +*%$"0 + !0'.- + +',Orchestrator48G <G CallAc.vity 52: H(#',&)-@F Aci.vity>BI= OrchestratorACallAc.vity4852(ry OrchestratorCJ
Durable Funcitons 1. ! ! )&" 2. Azure Functions ('
3. 3%$ #Azure Functions(' Durable Functions
,1#0-3!/ 2!/)!/ !/?=9 "0*)$2+'2.( &%+'2@>7;8
Durable Functions46.(&%+'25<"0 *)$2+'2:;8
Durable Functions95 @?36$1'#1 • '*(/#'#1
• ,+";A8:4'#1 • <7%.1 -1'#1 • "!,.!1%"'&'#1 >= )02 http://tamafuyou.hatenablog.com/
'/ ,& ""0+.
,&%* + $ #) Durable Func,ons-1( !
Azure Functions Azure Func*ons&+ host.jsonFunc*onApp(" !6#) *" 4'2/
• Func*onApp%$(" .Func*on5(",3 ! • Excep*on01- (" ! • "!6 !
Azure Functions Durable Func,onsOrchestrator ! • CallAc,vityWithRetryAsync •
CallSubOrchestratorWithRetryAsync • try-catch-finary
≒
if / if else / else / switch
for / foreach / while / do-while continue / break
linq
try-catch / try-finaly / try-catch-finaly
CreateTimer
WaitForExternalEvent / RaiseEventAsync
Task.WhenAll / Task.WhenAny
KG/).F 1. OrchestratorQ>7D? '%Table<T 2. A:API'%S 3.
A:API$#L8-(,[XUY 65M=2O Slack I;NV@*&$"RB 4. Slack*&$"HZ -0-& 2M=WA:API $#I; 5. *&$"JY -0-& 65 I;51E 94 65PC(,0 !+04 3M=JY https://gist.github.com/yuka1984/c5779a0e3d070a4c6e2cf72fe46ae41d#file-orchestrator-cs
Durable Functions - - • &' )
$ (* ! • (* ! • "#%" (* !
όοΫΤϯυॲཧΛॊೈʹߗ͘࡞ΕΔ ͦΕ͕ ʮ%VSBCMF'VODUJPOTʯ
Durable Func,ons
$-/&0 EC +" *# • ).
• EC • ' • 21(, 3% 4 !
7EC&#,%Azure Functions81 !&*" "$.9A=@< E - !'"
66):0CD2 6 (+;>/?5B 34 Durable Functions
• AL]APIVE$S "1015= " 89(693 9( ! • MQ,/-,0-$1BGN
2B>0-GN ]API ! • RAPI>?[IK;7'&,1"&6$X , 8.179( ! • VE48:ZUO=d ! • WJ169*'+59$< TH@= ! bc48$)2"Y`D716%]_C " Durable Func4ons$^F# \Ca"P
))B Func%ons31.,52H$ 6:@ 8F)(C# %= "& %w)!A+ www
Preview E< 57*GA;?(' -450/>D+ G9
M oT M m lM D v C B
t a g rG v bifh b M F F wp g cea n us M C
Durable Functions Durable Functions"*1%8/7A<79 59+9 F> =D:(0739)H> ;E@
VSTSC? TaskhubName(Durable Functions,$49IJ ).6*IJLB :.6*-&!$9 ;Azure FunctionsSlot (Preview)(07 %8&0 .6*#%'2GK
Durable Func,ons • Application Insights!4: • EventGrid+0Orchestrator)$684: • <9#'(running68Orchestrator
&% ! ,1Instance "Orchestrator)$68*; " "4: 7 Instance "$-. FunctionApp35 4:$2 /=
Durable Func,ons • ( 'E6@ KH93 • Orchestrator/;
1@ %!")'#*= • 2<NFC.G4B-J?>7:")'$ • PrecompileFunctions& (ASingletonAttribute A OLE6+0,I- 5M D8
Durable Func,ons • !/ • Durable Func-ons),Orchestrator7,!*5 #%7,!3
• Ac-vityDI( Func-ons"& &0. !( • EndToEnd!%$host+ ' func-ons- ( 2(Durable Func-ons!41 6)
Durable Functions • :E@; #*/LAHJMK;= 7I • )/>C3 F;5R 863
B< • Durable FunctionsLA1'+"%D • Durable FunctionsAzure Storage@; PAzure Storage49 O2NG?()-0!,$.&" • V1(.NET Framework)QGA V2Preview
Durable Func,ons AppService or • E>B> • MLK485IO
9 ;6?%$1 "( !2%&2% <7C • AppService+/2%$1 '+ %$1 " ( : )*#,2% JNA • @H-.03LFG=MLK4+/2 JD
Durable Func,ons • 2?6"&%( • #'%:@4/ • 7;=:@4/ • 6.
!"$)8* • 39=>9=,<"' 15 *0 -+A
Github
More Decks by Yu_ka1984
See All by Yu_ka1984
EventGridTopicで手軽にイベントドリブンを手に入れる
yukaabuno
5
1.9k
Durable Functionsの特徴をふわっと理解してみる
yukaabuno
2
190
Xamarin.Forms 使うべき?
yukaabuno
3
1.3k
Xamarin.Forms とコンソールアプリでモデル層を共通化してみた
yukaabuno
0
2.3k
Other Decks in Technology
See All in Technology
あの日、見つかっていなかったらどうなっていたか
kazzpapa3
2
210
長い仕事を任せる (Workflows、クラウドセッション、Kiro Web) | 目指せ Kiro マスター 10
inariku
PRO
3
200
SREのためのFinOps入門
muziyoshiz
3
1.6k
Shared Signals Framework 仕様解説
oidfj
0
430
Reticulum, le réseau cypherpunk dont vous avez besoin !
rlifchitz
0
140
高品質と高スピードを支える品質のシフトレフトのアプローチ
goyoki
4
1.2k
3文字略語に騙されない! 世界一わかりやすい『EDR』超入門
kamadamakoto
1
140
Intro to Kiro (One agent, every surface) | Kiro: Zero to Hero 01
inariku
PRO
2
130
Claude Codeで新規事業を伸ばせるか? Zennの試行錯誤の記録
wadayusuke
2
180
Claude Codeで作ったアプリを安全に公開する/Built with Claude Japan 2026
yoshidashingo
0
250
マネージャーをエスパーにしない マネジメントされる側から始める、働きやすい現場づくり
comi190327
0
430
MCPでネットワーク障害調査を自動化する前に直すべき3つのこと
yama3133
0
240
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
How to build a perfect <img>
jonoalderson
1
6.2k
Darren the Foodie - Storyboard
khoart
PRO
5
4.1k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
590
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
830
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
2
3.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.8k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
121
130k