Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Durable Functionsを"公式ドキュメントとは違う形で"話して見る
Search
Yu_ka1984
July 18, 2018
Technology
3
860
Durable Functionsを"公式ドキュメントとは違う形で"話して見る
第13回 Tokyo Jazui Night 2018/07/18
Yu_ka1984
July 18, 2018
Tweet
Share
More Decks by Yu_ka1984
See All by Yu_ka1984
EventGridTopicで手軽にイベントドリブンを手に入れる
yukaabuno
5
1.8k
Durable Functionsの特徴をふわっと理解してみる
yukaabuno
2
160
Xamarin.Forms 使うべき?
yukaabuno
3
1.2k
Xamarin.Forms とコンソールアプリでモデル層を共通化してみた
yukaabuno
0
2.2k
Other Decks in Technology
See All in Technology
AI との良い付き合い方を僕らは誰も知らない (WSS 2026 静岡版)
asei
1
240
「リリースファースト」の実感を届けるには 〜停滞するチームに変化を起こすアプローチ〜 #RSGT2026
kintotechdev
0
680
AWS re:Invent2025最新動向まとめ(NRIグループre:Cap 2025)
gamogamo
0
160
Oracle Cloud Infrastructure:2025年12月度サービス・アップデート
oracle4engineer
PRO
0
200
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
6
2.8k
Introduction to Bill One Development Engineer
sansan33
PRO
0
340
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
720
形式手法特論:コンパイラの「正しさ」は証明できるか? #burikaigi / BuriKaigi 2026
ytaka23
16
4.5k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.5k
テストセンター受験、オンライン受験、どっちなんだい?
yama3133
0
200
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
0
770
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
590
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
270
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
From π to Pie charts
rasagy
0
100
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
31
We Have a Design System, Now What?
morganepeng
54
8k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Transcript
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