+ All Categories
Home > Technology > Latence et streaming api Devoxx France 2015

Latence et streaming api Devoxx France 2015

Date post: 16-Jul-2015
Category:
Upload: streamdataio
View: 250 times
Download: 2 times
Share this document with a friend
Popular Tags:
27
@StreamdataIO #streamingapi Latence applicative et streaming API
Transcript
Page 1: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingapi

Latence applicative et streaming API

Page 2: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Latence applicative et streaming API

Streamdata.io

Nicolas Babel / Allan Denis

Stand 23

Page 3: Latence et streaming api  Devoxx France 2015
Page 4: Latence et streaming api  Devoxx France 2015
Page 5: Latence et streaming api  Devoxx France 2015

Mémoire sensorielle

Durée : 0,5 max pour visuel

2 sec pour audio

Mémoire court-terme

Durée : 30 secondes max

Mémoire long-terme

Page 6: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

6

Délai de réaction

d’une application

Impact /

sensation

sur

l’utilisateur

0,1 Secondes0,5 2 3 5 101 4

« Instantané »

Parfait

(eq. Relation

humaine)

Sans

attente

« Lent »

40 à 60%

d’abandon sur

le web desktop

« Très Lent »

30 à 40%

d’abandon sur

le web mobile

Perte d’attention

Enervement

Fatigue

Temps

« normal »

Page 7: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

- 100 ms = - 1% Revenue & - 5% pages vues

Source : http://blog.radware.com/applicationdelivery/applicationaccelerationoptimization/2013/06/web-performance-poverty-line/

Source : http://www.ebaytechblog.com/2013/03/29/measuring-real-user-experience-with-site-speed-gauge/#.VFIHLvTF9CN

Source : http://www.webperformancetoday.com/2011/11/08/velocity-faster-mobile-sites-business-kpis-case-studies/

Page 8: Latence et streaming api  Devoxx France 2015
Page 9: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Latence réseau (RTD) par technologie

300

150

110

100

30

25

10

0 50 100 150 200 250 300 350

EDGE/2G

3G

4G

Trans-continental optic fiber

Trans-country optic fiber

ADSL

In-town private network

En ADSL, la première donnée utile arrive en 60 ms (HTTPs)

En 4G, la première donnée utile arrive en 300 ms (450ms en 3G)

ms

Hors RRC

(Radio

Resource

Controleur)

Page 10: Latence et streaming api  Devoxx France 2015
Page 11: Latence et streaming api  Devoxx France 2015
Page 12: Latence et streaming api  Devoxx France 2015

La perception

Le temps de communication est une fonction

La latence

Le débit

La quantité de donnée Le protocole

Le nombre de requêtes

Page 13: Latence et streaming api  Devoxx France 2015
Page 14: Latence et streaming api  Devoxx France 2015
Page 15: Latence et streaming api  Devoxx France 2015

Les données dynamiques de vos interfaces

• Cotes

(Bourse & Paris en ligne)

• Statuts / info réseaux sociaux

• Propositions de recherche

• Informations / News

• Stock de ressources limitées

(Sharing economy & promo)

• Prix

• Dashboard

(Cash, vente, …)

• Input lors de travail collaboratif

(texte, dessins, …)

• Info Jeu en ligne

(Classements & données de jeu)

• …

Page 16: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Exemples

• Netflix

• Google

• Twitter

Page 17: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Netflix

Page 18: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Netflix (Falcor + JSONG)

JSON Patch

Note : Taille tableau

dépend du device !

JSON Path + cache local +

polling optimized query

http://www.infoq.com/presentations/netflix-reactive-rest (Jafar Husain)

Page 19: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Google

Page 20: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Twitter

Page 21: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

N’envoyer que la donnée utile : JSON Patch

http://jsonpatch.com/

Format pour décrire les modifications sur un document

JSON

{

"baz": "qux",

"foo": "bar"

}

[

{ "op": "replace", "path": "/baz",

"value": "boo" },

{ "op": "add", "path": "/hello",

"value": ["world"] },

{ "op": "remove", "path": "/foo"}

]

The original document

The patch

{

"baz": "boo",

"hello": ["world"]

}

The result

Page 22: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Comparaison des solutions pour données dynamiques

CompatibilitéNavigateur

Compabilitéinfra web

Facilité à dev. RessourcesDevice / Réseau

Downstream Latence applicative

Polling/Long Polling

Websocket

SSE

Websocket : seul protocole réellement bidirectionnel

Page 23: Latence et streaming api  Devoxx France 2015

@YourTwitterHandle@YourTwitterHandle@StreamdataIO#streamingAPI

Demo : 2 mn chrono

Page 24: Latence et streaming api  Devoxx France 2015

@YourTwitterHandle#YourSessionHashtag

URL api Uber

https://api.uber.com/v1/estimates/time?

start_latitude=33.9799396&

start_longitude=-118.3343132&

server_token=

LNiO_-f8xKfUM4qPDYnX4UbCNxSQd061k1NIhfLK

https://proxy.streamdata.io/

https://api.uber.com/v1/estimates/time?

start_latitude=33.9799396&

start_longitude=-118.3343132&

server_token=

LNiO_-f8xKfUM4qPDYnX4UbCNxSQd061k1NIhfLK

Page 25: Latence et streaming api  Devoxx France 2015

@YourTwitterHandle@YourTwitterHandle@StreamdataIO#streamingAPI

Summary

Page 26: Latence et streaming api  Devoxx France 2015

@StreamdataIO#streamingAPI

Conclusions

1. Objectif 0,5 seconde de latence applicative

2. Mettre des données dynamiques

3. « Plus les UI des autres sont biens, plus la tienne est

pourrie »(A. Einstein, « Relativity concept applied to UX », Plon, 1932)

4. Venez nous voir stand 23

Page 27: Latence et streaming api  Devoxx France 2015

@YourTwitterHandle@YourTwitterHandle@StreamdataIO#streamingAPI

Q & A


Recommended