Real-World Cloud Infrastructure Box - Cloud Security Alliance
Introduction to Real-Time Web Development & Cloud Fundamentals
-
Upload
radu-matei -
Category
Documents
-
view
222 -
download
0
Transcript of Introduction to Real-Time Web Development & Cloud Fundamentals
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
1/26
Introduction to Real-Time WebDevelopment & Cloud Fundamenta
MICROSOFT INNOVTION C!NT!R" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
2/26
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
3/26
W'o uses real-timecommunication
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
4/26
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
5/26
Classic client-serverscenario
Client
Re)uest
Response
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
6/26
*o+ does real-timecommunicatio+or,(
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
7/26
Classic lon-pollinscenario
Client
.ot Data(
.ot Data(
.ot Data(
*ere/s some data0
.ot Data(
.ot Data(
.ot Data(
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
8/26
W'1 isn/t lon-pollinood enou'
Client
.ot Data(
.ot Data(
.ot Data(
*ere/s some data0
.ot Data(
.ot Data(
.ot Data(
!ver1 time t'e clientas,s t'e server
data" band+idt' is bein used0
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
9/26
Microsot Innovation Center" #$%
Welcomin WebSoc,ets
WebSoc,et is a protocol providinull-duple2 communication c'annels o
a sinleTC$ connection
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
10/26
GET/chatHTTP/1.1
Host:server.example.com
Upgrade:websocket
Connection:Upgrade
Sec-WebSocket-e!:x"##H$b%&1E'&k()G*(+%w,,
Sec-WebSocket-rotocol:c(at s/perc(at
Sec-WebSocket-0ersion:1"
rigin:(ttp233example.com
HTTP/1.1141Switching Protocol
Upgrade:websocket
Connection:Upgrade
Sec-WebSocket-5ccept:HSmrc4s$l
Sec-WebSocket-rotocol:c(at
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
11/26
Microsot Innovation Center" #$%
W'1 not use WebSoc,etsdirectl1(
It +ill onl1 +or, i t'e bro+ser ullsupports *TM34
I t'e net+or,is unstable" it mi't s+or,in entirel1
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
12/26
Microsot Innovation Center" #$%
re t'ere an1 ot'er real-timetec'noloies(
3on-$ollin Forev
Server Sent!vents
WebSoc,et
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
13/26
Microsot Innovation Center" #$%
W'at is SinalR(
SinalRis a series o abstarctions arouvarious met'ods or providin persist
*TT$ connections
SinalRma,es real-time communicabet+een a clientand a serverver1 e
* d Si lR , i d
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
14/26
Microsot Innovation Center" #$%
*o+ does SinalR +or, in modernserver-client scenarios(
Client
I do real-time" do 1ou(
5ep0
3et/s $art1 in Real-time0
* d Si lR d id 'i ' l t
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
15/26
*o+ does SinalRdecide +'ic' real-ttec'nolo1 to use(
Client
I do WebSoc,ets" do 1ou(
5es0
3et/s use WebSoc,ets0
Microsot Innovation Center" #$%
* d Si lR d id 'i ' l t
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
16/26
*o+ does SinalRdecide +'ic' real-ttec'nolo1 to use(
Client
I do WebSoc,ets" do 1ou(
Nope
I do Server Sent !vents do 1ou(
5es0
3et/s use Server Sent !vents0
Microsot Innovation Center" #$%
* d Si lR d id 'i ' l t
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
17/26
*o+ does SinalRdecide +'ic' real-ttec'nolo1 to use(
Client
I do WebSoc,ets" do 1ou(
No0
I do Server Sent !vents do 1ou(
No0
I do Forever Frames" do 1ou(
5es0
3et/s use Forever Frames0
Microsot Innovation Center" #$%
*o does SinalR decide 'ic' real t
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
18/26
*o+ does SinalRdecide +'ic' real-ttec'nolo1 to use(
Client
I do WebSoc,ets" do 1ou(
No0
I do Server Sent !vents do 1ou(
No0
I do Forever Frames" do 1ou(
No0
Microsot Innovation Center" #$%
I t' li t d t' d t
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
19/26
Microsot Innovation Center" #$%
I t'e clientand t'e server do not aon one o t'e duple2 tec'noloies"
t'e1 +ill use lon-pollin
Client
.ot Data(
.ot Data(
.ot Data(
*ere/s some data0
.ot Data(
.ot Data(
.ot Data(
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
20/26
Microsot Innovation Center" #$%
T'e idea be'ind SinalR is to 'ide t+a1 t'e connection is made" so t'
prorammer isn/t concerned +it' *Ot'e data is sent
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
21/26
3on$ollin
ForeverFrames
ServerSent
!vents
WebSoc,es
SinalRallbac,
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
22/26
Transportneotiation
Microsot Innovation Center" #$%
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
23/26
3et/s tr1Websoc,ets0
No(*o+ aboutSS!(
No(ForeverFrames(
O,a1" t'en6
3on
SinalR Core Contepts
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
24/26
Microsot Innovation Center" #$%
SinalR Core Contepts
Connection7 simple endpoint or semessaes
*ub 7 'i'-level pipeline built usin Cont'at allo+ t'e clientand t'e serverto cot'ers/ met'ods directl1
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
25/26
Microsot Innovation Center" #$%
D!MO
SinalR *ubs
-
7/25/2019 Introduction to Real-Time Web Development & Cloud Fundamentals
26/26
Microsot Innovation Center" #$%
SinalR *ubs
*ubcalled b1 t
'ub is a rom Microso