SlideShare ist ein Scribd-Unternehmen logo
1 von 264
Downloaden Sie, um offline zu lesen
Basses latences, hauts débits : les secrets de la 
finance pour avoir des systèmes réactifs 
Cyrille DUPUYDAUBY 
Thomas PIERRAIN 
! 
SOCIETE GENERALE
Qui sommes nous ? 
use case driven (blog) Many Cores (blog)
Agenda 
• Banque d’investissement & marchés électroniques (–10mn) 
• Construisons ensemble un « Pricer » (–20mn) 
• Patterns: sequencer et conflation (–20mn) 
• Reactive Manifesto & Conclusion (– 5 mn) 
@cyrdup @tpierrain
@cyrdup @tpierrain 
La banque d'investissement 
• Fournir des solutions de financement 
• Proposer des solutions 
d'investissements 
• Créer des produits financiers 
• Agir sur les marchés
http://upload.wikimedia.org/wikipedia/commons/b/b8@/Saco_yPradulou_pSt o@ck_tEpxiceharnrgaei.jnpg
@cyrdup @tpierrain 
Les activités de marché
Carnet d’ordres 
Prix 
Moteur
PAS 
COMPRIS?
Faible latence, haut debit PerfUG (Septembre 2014)
@cyrdup @tpierrain 
Le supermarché
@cyrdup @tpierrain 
Les acteurs 
Investisseurs 
Market Makers 
Scalpers
@cyrdup @tpierrain 
Les automates 
Algo trading 
Arbitrage
@cyrdup @tpierrain 
Les enjeux 
• Complexité 
! • Fiabilité/disponibilité 
! • Capacité en volume 
! • Latence 
! 
!
@cyrdup @tpierrain 
Les enjeux 
• Complexité 
• 5200 Releases/an 
• Fiabilité/disponibilité 
• 5,5 * 24 
• Capacité en volume 
• 5M executions/jour, 250K market update/Sec 
• Latence 
• ≈ 5 ms end to end, 50 μsec pour haute fréquence
Agenda 
• Banque d’investissement & marchés électroniques (–10mn) 
• Construisons ensemble un « Pricer » (–20mn) 
• Patterns: sequencer et conflation (–20mn) 
• Reactive Manifesto & Conclusion (– 5 mn) 
@cyrdup @tpierrain
Le Pasta Pricer
Mission 
• Calculer en temps réel le prix des paquets de pâtes 
proposées 
• Offre en pates: 
• 4 tailles de paquet: 250g, 500g, 1Kg, 2Kg 
• 4 types de farine: basique, premium, bio, complète 
• 3 recettes: sans oeufs, avec et riche en oeuf 
• 50 formes et couleurs différentes 
soit 2400 types de pates ! 
@cyrdup @tpierrain
Calculer le prix 
• Le prix dépend des cours 
• des différents types de blés 
• des oeufs (le cas échéant) 
• du carton et/ou du plastique (emballage) 
• d’autres ingrédients optionnels (pates colorées): tomate épinards 
@cyrdup @tpierrain
@cyrdup @tpierrain 
Designons notre Pasta pricer! 
en mode 
¨EVENT STORMING¨
Bases pour notre représentation 
@cyrdup @tpierrain 
Pasta pricer 
on des flux d evenements 
reçoit .. 
on 
publie .. 
dans la même boite...
Bases pour notre représentation 
@cyrdup @tpierrain 
Pasta pricer 
3 étapes 
decoder Calculer encoder
Bases pour notre représentation 
@cyrdup @tpierrain 
Pasta pricer 
3 étapes 
inputs dec Calc Enc outputs 
ppeennnnee ppeennnnee ppeennnnee pgneonncechi 
ppeennnnee ppeennnnee ppeennnnee ppeennnnee 
2400 pates différentes
@cyrdup @tpierrain 
Designons notre Pasta pricer! 
on commence?
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
111001 
0101... 
dec Calc Enc 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
Oeufs 
1.5 € 
dec Calc Enc 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Oeufs 
1.5 €
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
Oeufs 
1.5 € 
dec Calc Enc 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc gnocchi 
Enc 
Oeufs 
1.5 € 
pen 
ne 
pen 
ne 
———— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Oeufs 
1.5 €
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
Gnocchi 
5.4 € 
dec Calc gnocchi 
Enc 
Oeufs 
1.5 € 
pen 
ne 
pen 
ne 
———— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
Gnocchi 
5.4 € 
gnocchi 
Oeufs 
1.5 € 
pen 
ne 
pen 
ne 
———— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
011001 
01100 
gnocchi 
… 
Oeufs 
1.5 € 
pen 
ne 
pen 
ne 
———— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
011001 
01100 
… 
Oeufs 
1.5 € 
pen 
ne 
pen 
ne 
———— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc penne 
Enc 
Oeufs 
1.5 € 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc penne 
Enc 
penne 
2.1 € 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
penne 
penne 
2.1 € 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
011001 
01100 
penne 
… 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
011001 
01100 
… 
Oeufs 
1.5 € 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
Oeufs 
1.5 € 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen ne 
ne 
pen 
ne 
pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
—- — pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
Oeufs 
1.5 € 
——— — 
—— 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
01100 
10110 
0…
@cyrdup @tpierrain 
Approche mono thread 
dec Calc Enc 
Oeufs 
1.5 € 
Pasta pricer 
—- 
— —— 
pen 
ne 
pen 
ne 
pen 
ne 
01100 
10110 
0…
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
Oeufs 
1.5 € 
pen 
pen 
——- 
ne 
ne 
01100 
10110 
0…
@cyrdup @tpierrain 
Approche mono thread 
Pasta pricer 
dec Calc Enc 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
———— 
— 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche mono thread 
avis sur la solution? 
-On n exploite pas la CPU au mieux 
-prix des dernières pâtes calculées en retard 
-le mono-thread: intéressant pour la ultra low 
latency - pas ici avec nos contraintes 
-le moment de // nos calculs !
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Pasta pricer 
pen 
ne 
——— 
—— 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
dec 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
111001 
0101...
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Pasta pricer 
pen 
ne 
——— 
—— 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
dec 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Oeufs 
bios 
3.5 €
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Pasta pricer 
pen 
ne 
——— 
—— 
—- 
— 
—- 
— 
Oeufs ... 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
dec 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
bios 
3.5 €
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Pasta pricer 
pen 
ne 
——— 
—— 
oeufs 
3.5 € 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
oeufs 
3.5 € 
gno 
cchi 
dec 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
oeufs 
3.5 € 
oeufs 
3.5 €
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc oeufs 
enc 
3.5 € 
Calc enc 
Calc enc 
dec ... 
oeufs 
3.5 € 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
pen 
ne 
——— 
—— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
oeufs 
3.5 € 
oeufs 
3.5 €
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
dec ... 
.... 
€ 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
pen 
ne 
——— 
—— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
penne 
5.4 € 
.... 
.... € 
...... 
8.2 €
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
dec ... 
.... 
€ 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
pen 
ne 
——— 
—— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
penne 
5.4 € 
.... 
.... € 
...... 
8.2 €
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
pen 
ne 
——— 
—— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
....
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
....
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
1110 
1001 
011 
1110 
0... 
.... 
111101 
. 
..... 
pen 
ne 
——— 
——
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
.... 
—- 
—
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
.... 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
.... 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
.... 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
.... 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
1110 
1001 
011 
1110 
0... 
111101 
. 
..... 
.... 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
1110 
1001 
011 
111101 
. 
..... 
.... 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
pen 
ne 
——— 
—— 
—- .... 
— 
—- 
— 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
111101 
. 
..... 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
111101 
. 
..... 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
pen 
ne 
——— 
—— 
dec ... 
Calc enc 
Calc enc 
Calc enc 
Calc enc 
Pasta pricer 
—- 
— 
—- 
— 
—- 
— 
—- 
— 
——— 
—— 
gno 
cchi
Approche 1 worker thread / pâte 
@cyrdup @tpierrain 
Avis? 
-2400 threads ... Ca va pas la tête ?!? 
-context switches de malade 
-modèle pas scalable... ni raisonnable 
-il faut // d accord- mais plus finement 
-approche suivante !
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
111001 
0101... 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
Oeufs 
bios 
3.5 € 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec Oeufs 
bios 
3.5 € 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
penne 
bio 
Oeufs 
bios 
3.5 € 
Oeufs 
bios 
3.5 €
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Gnocchi 
bio 
5.4 € 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
penne 
bio 
penne 
bio 
3.2 €
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
Gnocchi 
bio 
5.4 € 
gnocchi 
bio 
penne 
bio 
penne 
bio 
3.2 €
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
011000 
11010 
gnocchi 
bio 
penne 
bio 
… 
111110 
00110 
…
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
penne 
bio 
011000 
11010 
… 
111110 
00110 
…
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
011000 
11010 
… 
111110 
00110 
… 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
011000 
11010 
… 
111110 
00110 
… 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
011000 
11010 
… 
111110 
00110 
… 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche pool de thread 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
011000 
11010 
… 
pen 
ne 
pen 
ne
@cyrdup @tpierrain 
Approche « pool de thread » 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
@cyrdup @tpierrain 
Approche « pool de thread » 
c est mieux, non?
@cyrdup @tpierrain 
Approche « pool de thread » 
race conditions ?!?
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer: 
concentrons nous sur les gnocchis ! 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
111001 
0101... 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
Oeufs 
bios 
3.5 € 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec Oeufs 
bios 
3.5 € 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
ne
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
Oeufs 
bios 
3.5 € 
pen 
ne 
ne
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
Oeufs 
bios 
3.5 € 
pen 
ne 
ne 
000111 
0010 ...
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
Oeufs 
bios 
3.5 € 
pen 
ne 
ne 
carton 
+1.2 €
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
carton 
+1.2 € 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
Oeufs 
bios 
3.5 € 
pen 
ne 
ne
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
Oeufs 
bios 
3.5 € 
pen 
ne 
ne 
gnocchi 
bio 
carton 
+1.2 €
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Gnocchi 
bio 
5.4 € 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
Oeufs 
bios 
3.5 € 
pen 
ne 
ne 
gnocchi 
bio
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
Oeufs 
bios 
3.5 € 
pen 
ne 
ne 
Gnocchi 
bio 
5.4 € 
gnocchi 
bio
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Gnocchi 
bio 
4.4 € !!! 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
pen 
ne 
ne 
Gnocchi 
bio 
5.4 € 
gnocchi 
bio 
!!!
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
pen 
ne 
ne 
gnocchi 
bio 
Gnocchi 
bio 
4.4 € 
011001 
01100 
… 5.4 €
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
pen 
ne 
ne 
Gnocchi 
bio 
4.4 € 
011001 
01100 
… 
5.4 €
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
... .. 
.. 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
gnocchi 
bio 
pen 
ne 
ne 
011001 
01100 
… 
110001 
0111 … 
5.4 € 
4.4 €
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
011001 
01100 
… 
110001 
0111 … 
5.4 € 
4.4 € 
pen 
ne 
pen 
ne
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
011001 
01100 
… 
110001 
0111 … 
5.4 € 
4.4 € 
pen 
ne 
pen 
ne 
dernier prix pour 
les gnocchis: 4.4 € !!!
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
pen 
ne pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
Gno 
cchi 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
pen 
ne 
.... ... pen 
pen 
ne 
pen 
ne 
.. .... 
pen 
ne 
ne 
110001 
0111 … 
4.4 € 
pen 
ne 
pen 
ne 
dernier prix pour 
les gnocchis: 4.4 € !!!
Pool de thread & race conditions… 
@cyrdup @tpierrain 
Probleme: 
-le dernier prix publié pour les gnocchis 
ne tient pas compte de la dernières 
info reçue 
solution: 
-Il faut que les prix soient publiés en 
respectant l ordre des inputs reçus
Approche multi tasks / thread pool 
@cyrdup @tpierrain 
respecter l ordre OK, 
mais comment? 
avec des 
locks?
Approche multi tasks / thread pool 
@cyrdup @tpierrain 
les vieux maitres en 
multithreading ont un dicton : 
¨qui dit lock ... 
... dit deadlock¨
Approche multi tasks / thread pool 
@cyrdup @tpierrain 
en resume, on veut: 
1. Protéger l acces à nos ressources 
(pates dans un monde // et asynchrone 
2. pas de deadlock - donc pas de lock ni de 
wait sans timeout dans le code du pricer 
3. pas d expertise de dingue obligatoire en 
multithreading
En réalité, si on résume encore + 
@cyrdup @tpierrain 
On veut rendre la 
programmation reactive 
accessible à tous et sans 
danger
Agenda 
• Banque d’investissement & marchés électroniques (–10mn) 
• Construisons ensemble un « Pricer » (–20mn) 
• Patterns: sequencer et conflation (–20mn) 
• Reactive Manifesto & Conclusion (– 5 mn) 
@cyrdup @tpierrain
Programmation réactive pour tous ! 
@cyrdup @tpierrain 
Notre solution: 
¨Le sequencer¨
Programmation réactive pour tous ! 
@cyrdup @tpierrain 
¨Le sequencer¨ 
- un pattern qui garantit l ordre d execution des 
tâches associées à un ¨état¨ donné 
ex: un stream de prix, une négociation, un workflow, etc. 
! 
- Maintient la cohérence de cet état dans un 
environnement complètement asynchrone et //
Programmation réactive pour tous ! 
@cyrdup @tpierrain 
¨Le sequencer¨ 
8 
9 
! 
1 
2 
1 
2 
3
@cyrdup @tpierrain 
Le sequencer en post-it 
gnocchi 
Sequencer 
gnocchi 
classe qui 
agrège un 
sequencer 
le sequencer 
a qui on confie des 
tâches a 
¨sequencer¨ 
interface Sequencer{ 
void dispatch(Action action); 
} 
programmation 
asynchrone
@cyrdup @tpierrain 
Le sequencer en action 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
111001 
0101... 
dec 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
011011 
0101… 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
011011 
0101… 
dec 
Sequ 
gnocchi 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
farine 
0.5 € 
dec 
Sequ 
gnocchi 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Sequ 
gnocchi 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Gnocchi 
5.4 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
gnocchi 
Enc 
Sequ 
gnocchi 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Gnocchi 
5.4 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
gnocchi 
Enc 
Sequ 
gnocchi 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
011001 
01100 
… 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
011001 
01100 
… 
farine 
0.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
farine 
0.5 € 
011001 
01100 
… 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
011001 
01100 
… 
farine 
0.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
GNOCCHI 
6.1 € 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
GNOCCHI 
6.1 € 
gnocchi 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
011001 
01100 
… 
gnocchi 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
011001 
01100 
… 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
011001 
01100 
… 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
on REFAIT LE MATCH ?
@cyrdup @tpierrain 
Le sequencer en action 
Pasta pricer 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
dec 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
111001 
0101... 
dec 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
1.5 € 
011011 
0101… 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
011011 
0101… 
dec 
Sequ 
gnocchi 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
farine 
0.5 € 
dec 
Sequ 
gnocchi 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Sequ 
gnocchi 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Oeufs 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Gnocchi 
5.4 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
gnocchi 
Enc 
Sequ 
gnocchi 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
Gnocchi 
5.4 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
gnocchi 
Enc 
Sequ 
gnocchi 
Enc 
Enc 
Pasta pricer 
dec 
farine 
0.5 € 
011001 
01100 
… 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Sequ 
gnocchi 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
011001 
01100 
… 
farine 
0.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
farine 
0.5 € 
011001 
01100 
… 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
011001 
01100 
… 
farine 
0.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
GNOCCHI 
6.1 € 
gnocchi 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
GNOCCHI 
6.1 € 
gnocchi 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
011001 
01100 
… 
gnocchi 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
011001 
01100 
… 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
011001 
01100 
… 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
@cyrdup @tpierrain 
Le sequencer en action 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Gno 
cchi 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi
Et sous le capot du sequencer ? 
@cyrdup @tpierrain
l’implémentation elle, utilise 
des locks ou des CAS 
(Compare and Swap) en 
interne 
@cyrdup @tpierrain 
« Complexité » encapsulée
Pour un usage d’une simplicité … 
@cyrdup @tpierrain 
! 
interface IUnitOfExecution 
{ 
void dispatch(Action action); 
}
@cyrdup @tpierrain 
Du code ! 
du code !
Pasta Pricer powered by 
@cyrdup @tpierrain
@cyrdup @tpierrain 
Avantages du sequencer 
simplicité 
lisibilité 
fiabilité 
non bloquant 
! 
en revanche ... 
! 
il va nous manquer un autre outil ...
@cyrdup @tpierrain 
Un autre outil ?!? 
¨et oui ... 
de l eau qui 
dort, se méfier 
il faut ¨
Le problème des pics de charge 
Comment les 
absorber sans 
prendre de la 
@cyrdup @tpierrain 
latence?
système déjà chargé 
@cyrdup @tpierrain 
Exemple de pic de charge 
gnocchi 
epinard 
Calc 
rotini 
epinard 
Calc 
Pici 
epinard 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
epinard 
épinard 
1.5 € 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
Sequ 
rotini 
epinard 
épinard 
1.5 € 
Sequ 
pici 
epinard 
épinard 
1.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
111001 
0101... 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
100100 
101... 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
100100 
101... 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
oeufs 
bios 
2.2 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
011110 
0101... 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
100100 
101... 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
blé bios 
0.2 € . .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
blé bios 
0.2 € . .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
011110 
0101... 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
système déjà chargé 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
0110010 
1100… 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
0110010 
1100… 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
0110010 
1100… 
0110010 
1100… 
0110010 
1100… 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
0110010 
1100… 
0110010 
1100… 
0110010 
1100… 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.O1 e€ufs 
bios 
3.5 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
Oeufs 
bios 
3.5 € 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.1 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
Oeufs 
bios 
3.5 € 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.1 €
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
Oeufs 
bios 
3.5 € 
!!! 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.1 € 
!!!
@cyrdup @tpierrain 
Exemple de pic de charge 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
pen 
ne 
Gno 
cSEQchi 
Gno 
ScEQchi 
farf 
alle SEQ 
Gno 
cSEQchi 
SEQ 
Gno 
ScEQchi 
Gno 
cSEQchi 
Oeufs 
bios 
3.5 € 
OEUFS 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
oeufs 
bios 
f2a.2ri n€e 
bio 
1.1 € 
prix plus frais !!! 
!!! vieux prix
@cyrdup @tpierrain 
En cas de pic de charge… 
comment dépenser sa 
CPU a bon escient ? 
la conflation
@cyrdup @tpierrain 
La conflation 
¨ C est le moyen d amortir les pics de charge 
quand le système est déjà bien occupé ¨
@cyrdup @tpierrain 
2 types de conflation 
le Balking 
Le dernier message sur le même sujet vient 
remplacer le précédent. ¨Annule et remplace¨ 
Oeufs 
bios 
3.5 € 
Oeufs 
bios 
4.1 € 
Oeufs 
bios 
4.1 € 
t1 t0 t2 
le merge 
le dernier message sur le même sujet vient fusionner 
son contenu avec le précédent 
Oeufs 
bios 
5kg: 
20 € 
Oeufs 
bios 
1kg: 
5 € 
Oeufs bios 
1 kg: 5 € 
5 kg: 20 € 
t1 t0 t2
@cyrdup @tpierrain 
A ne pas confondre avec … 
La conflation n est 
pas de 
l échantillonage !
Même pic de charge… avec conflation 
système déjà chargé 
@cyrdup @tpierrain 
gnocchi 
epinard 
Calc 
rotini 
epinard 
Calc 
Pici 
epinard 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Sequ 
gnocchi 
epinard 
épinard 
1.5 € 
Sequ 
rotini 
epinard 
épinard 
1.5 € 
Sequ 
pici 
epinard 
épinard 
1.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
111001 
0101... 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
100100 
101... 
dec 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.5 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
100100 
101... 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
oeufs 
bios 
2.2 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.9 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
011110 
0101... farine 
bio 
1.O1 e€ufs 
bios 
3.9 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.1 € 
farine 
bio 
1.O1 e€ufs 
bios 
3.9 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
100100 
101... farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
blé bios 
0.2 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
blé bios 
0.2 € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 € 
011110 
0101...
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
OEUFS 1100… 
BIOS 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
3.5 €
Même pic de charge… avec conflation 
Pasta pricer système déjà chargé 
@cyrdup @tpierrain 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
Enc 
Enc 
Enc 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
1.7 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
.. .. .. 
. 
.. .. € 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
1.7 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Calc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Enc 
Pasta pricer 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
1.7 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Pasta pricer 
dec 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
0110010 
1100… 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
1.7 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
.. .. .. 
.. .. .. 
.. . . . 
. .. 
Enc 
Pasta pricer 
dec 
0110010 
1100… 
. .. .. 
.. .. .. 
.. .. .. 
. 
0110010 
1100… 
0110010 
1100… 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
1.7 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
0110010 
1100… 
0110010 
1100… 
0110010 
1100… 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
1.7 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
0110010 
1100… 
0110010 
1100… 
0110010 
1100… 
blé bios 
0.2 € 
farine 
bio 
1.O1 e€ufs 
bios 
1.7 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 €
Même pic de charge… avec conflation 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
1.7 € 
blé bios 
0.2 € 
farine 
bio 
1.1 € 
prix frais ;-/ 
engorgement limité
@cyrdup @tpierrain 
Back pressure obligatoire ! 
¨la conflation 
ne s exerce que 
sur un système 
déjà occupé ¨
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
111001 
0101... 
dec
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
100100 
101... 
dec 
Oeufs 
bios 
3.5 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
farine 
bio 
1.1 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
farine 
bio 
1.1 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
farine 
bio 
1.1 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
100100 
101...
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
Oeufs 
bios 
3.9 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
Oeufs 
bios 
3.9 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
Oeufs 
bios 
3.9 € 
011110 
0101...
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
farine 
bio 
1.1 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
farine 
bio 
1.1 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
farine 
bio 
1.1 € 
100100 
101...
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
blé bios 
0.2 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
blé bios 
0.2 € 
011110 
0101...
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
farine 
bio 
Blé 1.1 € 
bio 
0.2 € 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
Oeufs 
bios 
1.7 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Blé 
bio 
0.2 € 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
Oeufs 
bios 
1.7 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
Blé 
bio 
0.2 € 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
oeufs 
bios 
1.7 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
oeufs 
bios 
1.7 € 
Blé 
bio 
0.2 € 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 €
L’impact négatif des buffers intermédiaires… 
@cyrdup @tpierrain 
Calc 
oeufs 
bios 
1.7 € 
Blé 
bio 
0.2 € 
farine 
bio 
1.1 € 
Oeufs 
bios 
3.9 € 
Calc 
farine 
bio 
1.1 € 
Calc 
Enc 
Enc 
Enc 
Pasta pricer 
dec 
Oeufs 
bios 
3.5 € 
prend du retard 
par le centre !!!
… pour que la conflation soit effective … 
@cyrdup @tpierrain 
évitez les buffer 
ou les files 
intermédiaires !
@cyrdup @tpierrain 
Donc … 
Pour juguler les pics de charge
Demo 
@cyrdup @tpierrain
Facteurs clés pour le succès 
• L’importance de la modélisation de votre //isme 
@cyrdup @tpierrain 
! 
• L’importance de la mesure 
SLA percentiles !
@cyrdup @tpierrain 
Un avis, maître ? 
¨un ensemble de 
propriétés, un 
système Réactif 
est ¨
Agenda 
• Banque d’investissement & marchés électroniques (–10mn) 
• Construisons ensemble un « Pricer » (–20mn) 
• Patterns: sequencer et conflation (–20mn) 
• Reactive Manifesto & Conclusion (– 5 mn) 
@cyrdup @tpierrain
@cyrdup @tpierrain 
Reactive manifesto v2 
react to events react to load 
: covered today
Etre réactif … 
Ce n’est pas un marteau en or 
@cyrdup @tpierrain
@cyrdup @tpierrain 
Etre réactif … 
C’est une forme particulière 
de design
Une forme de design … 
… qui a besoin de nouvelles patterns 
@cyrdup @tpierrain
@cyrdup @tpierrain 
Etre réactif … 
1. Ce n’est pas un marteau en or 
2. C’est une forme particulière de design 
3. Qui a besoin de nouvelles patterns
@cyrdup @tpierrain 
Une dernière 
chose …
@cyrdup @tpierrain
@cyrdup @tpierrain 
« Michonne » statement 
• Application scalable verticalement 
• Deadlock-free applications - OO 
composable dans un env // 
• Concurrence « digeste » (tout 
public) 
• Modèle de concurrence modifiable 
a posteriori 
• TDD friendly
@cyrdup @tpierrain 
La philosophie Michonne 
• No lock-no deadlock 
• Approche pit of success 
• Une librairie, pas un framework 
• Des primitives plutôt que des acteurs 
• Modèle de composition façon 
« poupée russe » 
(sequencer, conflation, …) 
• Un modèle asynchrone
Venez jouer avec nous ! 
Essayez Michonne ! 
! 
pour aider à raffiner son API 
! 
et/ou 
! 
Rejoignez le projet 
en .NET, ou pour portage Java? 
Merci pour votre attention !
@cyrdup @tpierrain 
Quelques références 
1. Sites / blogs 
• http://www.reactivemanifesto.org/ 
• http://mechanical-sympathy.blogspot.fr/ (Martin THOMPSON) 
• http://dupdob.wordpress.com/ (many cores) 
• http://tpierrain.blogspot.fr/ (use case driven) 
2. Vidéos 
• Metrics, Metrics everywhere (Coda HALE) 
https://www.youtube.com/watch?v=czes-oa0yik 
• Vidéo: How NOT to measure latency (Gil TENE) 
http://www.infoq.com/presentations/latency-pitfalls 
• React2014: https://www.youtube.com/user/reactconf/videos 
3. Ouvrage: 
• Release It!: Design and deploy prod ready software (Michael T. NYGARD)

Weitere ähnliche Inhalte

Andere mochten auch

Docker and Windows: The State of the Union
Docker and Windows: The State of the UnionDocker and Windows: The State of the Union
Docker and Windows: The State of the UnionElton Stoneman
 
Decouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event stormingDecouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event stormingThomas Pierrain
 
Coder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architectureCoder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architectureThomas Pierrain
 
Windows Containers and Docker: Why You Should Care
Windows Containers and Docker: Why You Should CareWindows Containers and Docker: Why You Should Care
Windows Containers and Docker: Why You Should CareElton Stoneman
 
Culture craft humantalks
Culture craft humantalksCulture craft humantalks
Culture craft humantalksThomas Pierrain
 
A Pattern Language for Microservices
A Pattern Language for MicroservicesA Pattern Language for Microservices
A Pattern Language for MicroservicesChris Richardson
 
TDD is dead?!? Let's do an autospy (ncrafts.io)
TDD is dead?!? Let's do an autospy (ncrafts.io)TDD is dead?!? Let's do an autospy (ncrafts.io)
TDD is dead?!? Let's do an autospy (ncrafts.io)Thomas Pierrain
 
CQRS without event sourcing
CQRS without event sourcingCQRS without event sourcing
CQRS without event sourcingThomas Pierrain
 
Solving distributed data management problems in a microservice architecture (...
Solving distributed data management problems in a microservice architecture (...Solving distributed data management problems in a microservice architecture (...
Solving distributed data management problems in a microservice architecture (...Chris Richardson
 
Building and deploying microservices with event sourcing, CQRS and Docker (Be...
Building and deploying microservices with event sourcing, CQRS and Docker (Be...Building and deploying microservices with event sourcing, CQRS and Docker (Be...
Building and deploying microservices with event sourcing, CQRS and Docker (Be...Chris Richardson
 
Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...
Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...
Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...Chris Richardson
 
Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Adrian Cockcroft
 
JavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with Sagas
JavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with SagasJavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with Sagas
JavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with SagasChris Richardson
 
Architecting Microservices in .Net
Architecting Microservices in .NetArchitecting Microservices in .Net
Architecting Microservices in .NetRichard Banks
 
Principles of microservices velocity
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocitySam Newman
 
Azure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
Azure tales: a real world CQRS and ES Deep Dive - Andrea SaltarelloAzure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
Azure tales: a real world CQRS and ES Deep Dive - Andrea SaltarelloITCamp
 

Andere mochten auch (17)

Docker and Windows: The State of the Union
Docker and Windows: The State of the UnionDocker and Windows: The State of the Union
Docker and Windows: The State of the Union
 
Decouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event stormingDecouvrir son sujet grace à l'event storming
Decouvrir son sujet grace à l'event storming
 
Coder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architectureCoder sans peur du changement avec la meme pas mal hexagonal architecture
Coder sans peur du changement avec la meme pas mal hexagonal architecture
 
Windows Containers and Docker: Why You Should Care
Windows Containers and Docker: Why You Should CareWindows Containers and Docker: Why You Should Care
Windows Containers and Docker: Why You Should Care
 
Culture craft humantalks
Culture craft humantalksCulture craft humantalks
Culture craft humantalks
 
Async await...oh wait!
Async await...oh wait!Async await...oh wait!
Async await...oh wait!
 
A Pattern Language for Microservices
A Pattern Language for MicroservicesA Pattern Language for Microservices
A Pattern Language for Microservices
 
TDD is dead?!? Let's do an autospy (ncrafts.io)
TDD is dead?!? Let's do an autospy (ncrafts.io)TDD is dead?!? Let's do an autospy (ncrafts.io)
TDD is dead?!? Let's do an autospy (ncrafts.io)
 
CQRS without event sourcing
CQRS without event sourcingCQRS without event sourcing
CQRS without event sourcing
 
Solving distributed data management problems in a microservice architecture (...
Solving distributed data management problems in a microservice architecture (...Solving distributed data management problems in a microservice architecture (...
Solving distributed data management problems in a microservice architecture (...
 
Building and deploying microservices with event sourcing, CQRS and Docker (Be...
Building and deploying microservices with event sourcing, CQRS and Docker (Be...Building and deploying microservices with event sourcing, CQRS and Docker (Be...
Building and deploying microservices with event sourcing, CQRS and Docker (Be...
 
Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...
Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...
Omnikron webbinar - Microservices: enabling the rapid, frequent, and reliable...
 
Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016
 
JavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with Sagas
JavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with SagasJavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with Sagas
JavaOne2017: ACID Is So Yesterday: Maintaining Data Consistency with Sagas
 
Architecting Microservices in .Net
Architecting Microservices in .NetArchitecting Microservices in .Net
Architecting Microservices in .Net
 
Principles of microservices velocity
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocity
 
Azure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
Azure tales: a real world CQRS and ES Deep Dive - Andrea SaltarelloAzure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
Azure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
 

Mehr von Thomas Pierrain

The scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarineThe scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarineThomas Pierrain
 
La scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaireLa scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaireThomas Pierrain
 
De l'autre côté du miroir
De l'autre côté du miroirDe l'autre côté du miroir
De l'autre côté du miroirThomas Pierrain
 
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDDWrite Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDDThomas Pierrain
 
Beyond Hexagonal architecture
Beyond Hexagonal architectureBeyond Hexagonal architecture
Beyond Hexagonal architectureThomas Pierrain
 
The 9 rules of debugging
The 9 rules of debuggingThe 9 rules of debugging
The 9 rules of debuggingThomas Pierrain
 
Hexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shellHexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shellThomas Pierrain
 
Une nuit dans l'hexagone
Une nuit dans l'hexagoneUne nuit dans l'hexagone
Une nuit dans l'hexagoneThomas Pierrain
 
As time goes by (episode 2)
As time goes by (episode 2)As time goes by (episode 2)
As time goes by (episode 2)Thomas Pierrain
 
Et si on parlait Éthique ?
Et si on parlait Éthique ?Et si on parlait Éthique ?
Et si on parlait Éthique ?Thomas Pierrain
 
L'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettreL'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettreThomas Pierrain
 
Legacy club (english version)
Legacy club (english version)Legacy club (english version)
Legacy club (english version)Thomas Pierrain
 
The art of Software Design
The art of Software DesignThe art of Software Design
The art of Software DesignThomas Pierrain
 
Culture Craft Devoxx 2015
Culture Craft Devoxx 2015Culture Craft Devoxx 2015
Culture Craft Devoxx 2015Thomas Pierrain
 

Mehr von Thomas Pierrain (17)

The scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarineThe scale-up, the autonomy and the nuclear submarine
The scale-up, the autonomy and the nuclear submarine
 
Hexagonal And Beyond
Hexagonal And BeyondHexagonal And Beyond
Hexagonal And Beyond
 
La scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaireLa scale-up, l'autonomie et le sous-marin nucléaire
La scale-up, l'autonomie et le sous-marin nucléaire
 
De l'autre côté du miroir
De l'autre côté du miroirDe l'autre côté du miroir
De l'autre côté du miroir
 
eXtreme
eXtremeeXtreme
eXtreme
 
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDDWrite Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
Write Antifragile & Domain-Driven tests with ”Outside-in diamond” ◆ TDD
 
Beyond Hexagonal architecture
Beyond Hexagonal architectureBeyond Hexagonal architecture
Beyond Hexagonal architecture
 
The 9 rules of debugging
The 9 rules of debuggingThe 9 rules of debugging
The 9 rules of debugging
 
Hexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shellHexagonal architecture vs Functional core / Imperative shell
Hexagonal architecture vs Functional core / Imperative shell
 
Une nuit dans l'hexagone
Une nuit dans l'hexagoneUne nuit dans l'hexagone
Une nuit dans l'hexagone
 
Equiper sa voie
Equiper sa voieEquiper sa voie
Equiper sa voie
 
As time goes by (episode 2)
As time goes by (episode 2)As time goes by (episode 2)
As time goes by (episode 2)
 
Et si on parlait Éthique ?
Et si on parlait Éthique ?Et si on parlait Éthique ?
Et si on parlait Éthique ?
 
L'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettreL'Agilité a grande échelle : conserver l'esprit, pas la lettre
L'Agilité a grande échelle : conserver l'esprit, pas la lettre
 
Legacy club (english version)
Legacy club (english version)Legacy club (english version)
Legacy club (english version)
 
The art of Software Design
The art of Software DesignThe art of Software Design
The art of Software Design
 
Culture Craft Devoxx 2015
Culture Craft Devoxx 2015Culture Craft Devoxx 2015
Culture Craft Devoxx 2015
 

Kürzlich hochgeladen

QCM Réseaux informatique V19.02.2017.pdf
QCM Réseaux informatique V19.02.2017.pdfQCM Réseaux informatique V19.02.2017.pdf
QCM Réseaux informatique V19.02.2017.pdfAyoub893663
 
webinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdf
webinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdfwebinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdf
webinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdfInstitut de l'Elevage - Idele
 
webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...
webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...
webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...Institut de l'Elevage - Idele
 
webinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdf
webinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdfwebinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdf
webinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdfInstitut de l'Elevage - Idele
 
rapport stage OCP : Elaboration plan des machines : La machine stockeuse et ...
rapport stage OCP : Elaboration plan des machines :  La machine stockeuse et ...rapport stage OCP : Elaboration plan des machines :  La machine stockeuse et ...
rapport stage OCP : Elaboration plan des machines : La machine stockeuse et ...NiHad27
 
2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptx
2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptx2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptx
2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptxBassamRhouma
 

Kürzlich hochgeladen (6)

QCM Réseaux informatique V19.02.2017.pdf
QCM Réseaux informatique V19.02.2017.pdfQCM Réseaux informatique V19.02.2017.pdf
QCM Réseaux informatique V19.02.2017.pdf
 
webinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdf
webinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdfwebinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdf
webinaire eBIS n°9 La génétique du Méthane_02_20240321_SFresco_Methabreed.pdf
 
webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...
webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...
webinaire eBIS n°9 La génétique du Méthane_03_20240321_JPromp_presentation_Mé...
 
webinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdf
webinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdfwebinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdf
webinaire eBIS n°9 La génétique du Méthane_01_20240321_DBoichard_contexte.pdf
 
rapport stage OCP : Elaboration plan des machines : La machine stockeuse et ...
rapport stage OCP : Elaboration plan des machines :  La machine stockeuse et ...rapport stage OCP : Elaboration plan des machines :  La machine stockeuse et ...
rapport stage OCP : Elaboration plan des machines : La machine stockeuse et ...
 
2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptx
2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptx2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptx
2022-PRESENTATION DE PROJET FIN D'ETUDE-REHOUMA BASSEM.pptx
 

Faible latence, haut debit PerfUG (Septembre 2014)

  • 1. Basses latences, hauts débits : les secrets de la finance pour avoir des systèmes réactifs Cyrille DUPUYDAUBY Thomas PIERRAIN ! SOCIETE GENERALE
  • 2. Qui sommes nous ? use case driven (blog) Many Cores (blog)
  • 3. Agenda • Banque d’investissement & marchés électroniques (–10mn) • Construisons ensemble un « Pricer » (–20mn) • Patterns: sequencer et conflation (–20mn) • Reactive Manifesto & Conclusion (– 5 mn) @cyrdup @tpierrain
  • 4. @cyrdup @tpierrain La banque d'investissement • Fournir des solutions de financement • Proposer des solutions d'investissements • Créer des produits financiers • Agir sur les marchés
  • 6. @cyrdup @tpierrain Les activités de marché
  • 10. @cyrdup @tpierrain Le supermarché
  • 11. @cyrdup @tpierrain Les acteurs Investisseurs Market Makers Scalpers
  • 12. @cyrdup @tpierrain Les automates Algo trading Arbitrage
  • 13. @cyrdup @tpierrain Les enjeux • Complexité ! • Fiabilité/disponibilité ! • Capacité en volume ! • Latence ! !
  • 14. @cyrdup @tpierrain Les enjeux • Complexité • 5200 Releases/an • Fiabilité/disponibilité • 5,5 * 24 • Capacité en volume • 5M executions/jour, 250K market update/Sec • Latence • ≈ 5 ms end to end, 50 μsec pour haute fréquence
  • 15. Agenda • Banque d’investissement & marchés électroniques (–10mn) • Construisons ensemble un « Pricer » (–20mn) • Patterns: sequencer et conflation (–20mn) • Reactive Manifesto & Conclusion (– 5 mn) @cyrdup @tpierrain
  • 17. Mission • Calculer en temps réel le prix des paquets de pâtes proposées • Offre en pates: • 4 tailles de paquet: 250g, 500g, 1Kg, 2Kg • 4 types de farine: basique, premium, bio, complète • 3 recettes: sans oeufs, avec et riche en oeuf • 50 formes et couleurs différentes soit 2400 types de pates ! @cyrdup @tpierrain
  • 18. Calculer le prix • Le prix dépend des cours • des différents types de blés • des oeufs (le cas échéant) • du carton et/ou du plastique (emballage) • d’autres ingrédients optionnels (pates colorées): tomate épinards @cyrdup @tpierrain
  • 19. @cyrdup @tpierrain Designons notre Pasta pricer! en mode ¨EVENT STORMING¨
  • 20. Bases pour notre représentation @cyrdup @tpierrain Pasta pricer on des flux d evenements reçoit .. on publie .. dans la même boite...
  • 21. Bases pour notre représentation @cyrdup @tpierrain Pasta pricer 3 étapes decoder Calculer encoder
  • 22. Bases pour notre représentation @cyrdup @tpierrain Pasta pricer 3 étapes inputs dec Calc Enc outputs ppeennnnee ppeennnnee ppeennnnee pgneonncechi ppeennnnee ppeennnnee ppeennnnee ppeennnnee 2400 pates différentes
  • 23. @cyrdup @tpierrain Designons notre Pasta pricer! on commence?
  • 24. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 25. @cyrdup @tpierrain Approche mono thread Pasta pricer 111001 0101... dec Calc Enc ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 26. @cyrdup @tpierrain Approche mono thread Pasta pricer Oeufs 1.5 € dec Calc Enc ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 27. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne Oeufs 1.5 €
  • 28. @cyrdup @tpierrain Approche mono thread Pasta pricer Oeufs 1.5 € dec Calc Enc ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 29. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 30. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 31. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 32. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc gnocchi Enc Oeufs 1.5 € pen ne pen ne ———— pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne Oeufs 1.5 €
  • 33. @cyrdup @tpierrain Approche mono thread Pasta pricer Gnocchi 5.4 € dec Calc gnocchi Enc Oeufs 1.5 € pen ne pen ne ———— pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 34. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc Gnocchi 5.4 € gnocchi Oeufs 1.5 € pen ne pen ne ———— pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 35. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc 011001 01100 gnocchi … Oeufs 1.5 € pen ne pen ne ———— pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 36. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc 011001 01100 … Oeufs 1.5 € pen ne pen ne ———— pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 37. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc penne Enc Oeufs 1.5 € Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 38. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc penne Enc penne 2.1 € Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 39. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc penne penne 2.1 € Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 40. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc 011001 01100 penne … Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 41. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc 011001 01100 … Oeufs 1.5 € ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 42. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc Oeufs 1.5 € pen ne ———— — pen ne pen ne pen ne pen ne ne pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne pen ne pen ne —- — pen ne pen ne
  • 43. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc Oeufs 1.5 € ——— — —— pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne 01100 10110 0…
  • 44. @cyrdup @tpierrain Approche mono thread dec Calc Enc Oeufs 1.5 € Pasta pricer —- — —— pen ne pen ne pen ne 01100 10110 0…
  • 45. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc Oeufs 1.5 € pen pen ——- ne ne 01100 10110 0…
  • 46. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne ———— — pen ne pen ne pen ne pen ne pen ne pen ne pen ne
  • 47. @cyrdup @tpierrain Approche mono thread avis sur la solution? -On n exploite pas la CPU au mieux -prix des dernières pâtes calculées en retard -le mono-thread: intéressant pour la ultra low latency - pas ici avec nos contraintes -le moment de // nos calculs !
  • 48. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — —- — —- — —- — ——— —— gno cchi
  • 49. Approche 1 worker thread / pâte @cyrdup @tpierrain Pasta pricer pen ne ——— —— —- — —- — —- — —- — ——— —— gno cchi dec Calc enc Calc enc Calc enc Calc enc ... Calc enc Calc enc Calc enc Calc enc 111001 0101...
  • 50. Approche 1 worker thread / pâte @cyrdup @tpierrain Pasta pricer pen ne ——— —— —- — —- — —- — —- — ——— —— gno cchi dec Calc enc Calc enc Calc enc Calc enc ... Calc enc Calc enc Calc enc Calc enc Oeufs bios 3.5 €
  • 51. Approche 1 worker thread / pâte @cyrdup @tpierrain Pasta pricer pen ne ——— —— —- — —- — Oeufs ... —- — —- — ——— —— gno cchi dec Calc enc Calc enc Calc enc Calc enc Calc enc Calc enc Calc enc Calc enc bios 3.5 €
  • 52. Approche 1 worker thread / pâte @cyrdup @tpierrain Pasta pricer pen ne ——— —— oeufs 3.5 € —- — —- — —- — —- — ——— —— oeufs 3.5 € gno cchi dec Calc enc Calc enc Calc enc Calc enc ... Calc enc Calc enc Calc enc Calc enc oeufs 3.5 € oeufs 3.5 €
  • 53. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc oeufs enc 3.5 € Calc enc Calc enc dec ... oeufs 3.5 € Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — pen ne ——— —— —- — —- — —- — ——— —— gno cchi oeufs 3.5 € oeufs 3.5 €
  • 54. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc dec ... .... € Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — pen ne ——— —— —- — —- — —- — ——— —— gno cchi penne 5.4 € .... .... € ...... 8.2 €
  • 55. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc dec ... .... € Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — pen ne ——— —— —- — —- — —- — ——— —— gno cchi penne 5.4 € .... .... € ...... 8.2 €
  • 56. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — pen ne ——— —— —- — —- — —- — ——— —— gno cchi 1110 1001 011 1110 0... 111101 . ..... ....
  • 57. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — —- — —- — —- — ——— —— gno cchi 1110 1001 011 1110 0... 111101 . ..... ....
  • 58. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — —- — —- — —- — ——— —— gno cchi 1110 1001 011 1110 0... .... 111101 . ..... pen ne ——— ——
  • 59. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — —- — —- — ——— —— gno cchi 1110 1001 011 1110 0... 111101 . ..... .... —- —
  • 60. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 1110 1001 011 1110 0... 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  • 61. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 1110 1001 011 1110 0... 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  • 62. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 1110 1001 011 1110 0... 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  • 63. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 1110 1001 011 1110 0... 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  • 64. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 1110 1001 011 1110 0... 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  • 65. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 1110 1001 011 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  • 66. Approche 1 worker thread / pâte pen ne ——— —— —- .... — —- — @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 111101 . ..... —- — —- — ——— —— gno cchi
  • 67. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer 111101 . ..... —- — —- — —- — —- — ——— —— gno cchi
  • 68. Approche 1 worker thread / pâte @cyrdup @tpierrain Calc enc Calc enc Calc enc Calc enc pen ne ——— —— dec ... Calc enc Calc enc Calc enc Calc enc Pasta pricer —- — —- — —- — —- — ——— —— gno cchi
  • 69. Approche 1 worker thread / pâte @cyrdup @tpierrain Avis? -2400 threads ... Ca va pas la tête ?!? -context switches de malade -modèle pas scalable... ni raisonnable -il faut // d accord- mais plus finement -approche suivante !
  • 70. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 71. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc 111001 0101... dec pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 72. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec Oeufs bios 3.5 € pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 73. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec Oeufs bios 3.5 € pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 74. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio penne bio Oeufs bios 3.5 € Oeufs bios 3.5 €
  • 75. @cyrdup @tpierrain Approche pool de thread Pasta pricer Gnocchi bio 5.4 € Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio penne bio penne bio 3.2 €
  • 76. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne Gnocchi bio 5.4 € gnocchi bio penne bio penne bio 3.2 €
  • 77. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 011000 11010 gnocchi bio penne bio … 111110 00110 …
  • 78. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio penne bio 011000 11010 … 111110 00110 …
  • 79. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 011000 11010 … 111110 00110 … pen ne pen ne
  • 80. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 011000 11010 … 111110 00110 … pen ne pen ne
  • 81. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 011000 11010 … 111110 00110 … pen ne pen ne
  • 82. @cyrdup @tpierrain Approche pool de thread Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 011000 11010 … pen ne pen ne
  • 83. @cyrdup @tpierrain Approche « pool de thread » Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 84. @cyrdup @tpierrain Approche « pool de thread » c est mieux, non?
  • 85. @cyrdup @tpierrain Approche « pool de thread » race conditions ?!?
  • 86. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer: concentrons nous sur les gnocchis ! Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 87. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc 111001 0101... dec pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 88. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec Oeufs bios 3.5 € pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 89. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec Oeufs bios 3.5 € pen ne pen pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne ne
  • 90. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio Oeufs bios 3.5 € pen ne ne
  • 91. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio Oeufs bios 3.5 € pen ne ne 000111 0010 ...
  • 92. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio Oeufs bios 3.5 € pen ne ne carton +1.2 €
  • 93. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec carton +1.2 € pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio Oeufs bios 3.5 € pen ne ne
  • 94. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio Oeufs bios 3.5 € pen ne ne gnocchi bio carton +1.2 €
  • 95. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Gnocchi bio 5.4 € Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio Oeufs bios 3.5 € pen ne ne gnocchi bio
  • 96. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio Oeufs bios 3.5 € pen ne ne Gnocchi bio 5.4 € gnocchi bio
  • 97. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Gnocchi bio 4.4 € !!! Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio pen ne ne Gnocchi bio 5.4 € gnocchi bio !!!
  • 98. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio pen ne ne gnocchi bio Gnocchi bio 4.4 € 011001 01100 … 5.4 €
  • 99. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio pen ne ne Gnocchi bio 4.4 € 011001 01100 … 5.4 €
  • 100. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen pen ne pen ne pen ne pen ne pen ne ... .. .. pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne gnocchi bio pen ne ne 011001 01100 … 110001 0111 … 5.4 € 4.4 €
  • 101. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 011001 01100 … 110001 0111 … 5.4 € 4.4 € pen ne pen ne
  • 102. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 011001 01100 … 110001 0111 … 5.4 € 4.4 € pen ne pen ne dernier prix pour les gnocchis: 4.4 € !!!
  • 103. Pool de thread & race conditions… @cyrdup @tpierrain Pasta pricer Calc Calc Calc Enc Enc Enc dec pen ne pen ne pen ne pen ne pen ne pen ne Gno cchi pen ne pen ne pen ne pen ne pen ne .... ... pen pen ne pen ne .. .... pen ne ne 110001 0111 … 4.4 € pen ne pen ne dernier prix pour les gnocchis: 4.4 € !!!
  • 104. Pool de thread & race conditions… @cyrdup @tpierrain Probleme: -le dernier prix publié pour les gnocchis ne tient pas compte de la dernières info reçue solution: -Il faut que les prix soient publiés en respectant l ordre des inputs reçus
  • 105. Approche multi tasks / thread pool @cyrdup @tpierrain respecter l ordre OK, mais comment? avec des locks?
  • 106. Approche multi tasks / thread pool @cyrdup @tpierrain les vieux maitres en multithreading ont un dicton : ¨qui dit lock ... ... dit deadlock¨
  • 107. Approche multi tasks / thread pool @cyrdup @tpierrain en resume, on veut: 1. Protéger l acces à nos ressources (pates dans un monde // et asynchrone 2. pas de deadlock - donc pas de lock ni de wait sans timeout dans le code du pricer 3. pas d expertise de dingue obligatoire en multithreading
  • 108. En réalité, si on résume encore + @cyrdup @tpierrain On veut rendre la programmation reactive accessible à tous et sans danger
  • 109. Agenda • Banque d’investissement & marchés électroniques (–10mn) • Construisons ensemble un « Pricer » (–20mn) • Patterns: sequencer et conflation (–20mn) • Reactive Manifesto & Conclusion (– 5 mn) @cyrdup @tpierrain
  • 110. Programmation réactive pour tous ! @cyrdup @tpierrain Notre solution: ¨Le sequencer¨
  • 111. Programmation réactive pour tous ! @cyrdup @tpierrain ¨Le sequencer¨ - un pattern qui garantit l ordre d execution des tâches associées à un ¨état¨ donné ex: un stream de prix, une négociation, un workflow, etc. ! - Maintient la cohérence de cet état dans un environnement complètement asynchrone et //
  • 112. Programmation réactive pour tous ! @cyrdup @tpierrain ¨Le sequencer¨ 8 9 ! 1 2 1 2 3
  • 113. @cyrdup @tpierrain Le sequencer en post-it gnocchi Sequencer gnocchi classe qui agrège un sequencer le sequencer a qui on confie des tâches a ¨sequencer¨ interface Sequencer{ void dispatch(Action action); } programmation asynchrone
  • 114. @cyrdup @tpierrain Le sequencer en action Pasta pricer Calc Calc Calc Enc Enc Enc dec Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 115. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer 111001 0101... dec Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 116. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 117. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 118. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 119. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € 011011 0101… pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 120. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer 011011 0101… dec Sequ gnocchi Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 121. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer farine 0.5 € dec Sequ gnocchi Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 122. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec farine 0.5 € Sequ gnocchi Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 123. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec farine 0.5 € Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 124. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec farine 0.5 € Gnocchi 5.4 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 125. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc gnocchi Enc Sequ gnocchi Enc Enc Pasta pricer dec farine 0.5 € Gnocchi 5.4 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 126. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc gnocchi Enc Sequ gnocchi Enc Enc Pasta pricer dec farine 0.5 € 011001 01100 … pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 127. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec 011001 01100 … farine 0.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 128. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi farine 0.5 € 011001 01100 … pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 129. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi 011001 01100 … farine 0.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 130. @cyrdup @tpierrain Le sequencer en action GNOCCHI 6.1 € gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 131. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc GNOCCHI 6.1 € gnocchi Enc Enc Enc Pasta pricer dec Sequ gnocchi pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 132. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc 011001 01100 … gnocchi Enc Enc Enc Pasta pricer dec Sequ gnocchi pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 133. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec 011001 01100 … Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 134. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec 011001 01100 … Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 135. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 136. @cyrdup @tpierrain Le sequencer en action on REFAIT LE MATCH ?
  • 137. @cyrdup @tpierrain Le sequencer en action Pasta pricer Calc Calc Calc Enc Enc Enc dec Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 138. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer 111001 0101... dec Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 139. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 140. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 141. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 142. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec Oeufs 1.5 € 011011 0101… pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 143. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer 011011 0101… dec Sequ gnocchi Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 144. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer farine 0.5 € dec Sequ gnocchi Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 145. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec farine 0.5 € Sequ gnocchi Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 146. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec farine 0.5 € Oeufs 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 147. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec farine 0.5 € Gnocchi 5.4 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 148. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc gnocchi Enc Sequ gnocchi Enc Enc Pasta pricer dec farine 0.5 € Gnocchi 5.4 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 149. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc gnocchi Enc Sequ gnocchi Enc Enc Pasta pricer dec farine 0.5 € 011001 01100 … pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 150. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Sequ gnocchi Calc Calc Enc Enc Enc Pasta pricer dec 011001 01100 … farine 0.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 151. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi farine 0.5 € 011001 01100 … pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 152. @cyrdup @tpierrain Le sequencer en action gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi 011001 01100 … farine 0.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 153. @cyrdup @tpierrain Le sequencer en action GNOCCHI 6.1 € gnocchi Calc Calc Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 154. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc GNOCCHI 6.1 € gnocchi Enc Enc Enc Pasta pricer dec Sequ gnocchi pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 155. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc 011001 01100 … gnocchi Enc Enc Enc Pasta pricer dec Sequ gnocchi pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi
  • 156. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec 011001 01100 … Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 157. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec 011001 01100 … Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 158. @cyrdup @tpierrain Le sequencer en action Calc Calc Calc Enc Enc Enc Pasta pricer dec Gno cchi Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi pen ne Gno cSEQchi Gno ScEQchi Gno cSEQchi SEQ Gno ScEQchi
  • 159. Et sous le capot du sequencer ? @cyrdup @tpierrain
  • 160. l’implémentation elle, utilise des locks ou des CAS (Compare and Swap) en interne @cyrdup @tpierrain « Complexité » encapsulée
  • 161. Pour un usage d’une simplicité … @cyrdup @tpierrain ! interface IUnitOfExecution { void dispatch(Action action); }
  • 162. @cyrdup @tpierrain Du code ! du code !
  • 163. Pasta Pricer powered by @cyrdup @tpierrain
  • 164. @cyrdup @tpierrain Avantages du sequencer simplicité lisibilité fiabilité non bloquant ! en revanche ... ! il va nous manquer un autre outil ...
  • 165. @cyrdup @tpierrain Un autre outil ?!? ¨et oui ... de l eau qui dort, se méfier il faut ¨
  • 166. Le problème des pics de charge Comment les absorber sans prendre de la @cyrdup @tpierrain latence?
  • 167. système déjà chargé @cyrdup @tpierrain Exemple de pic de charge gnocchi epinard Calc rotini epinard Calc Pici epinard Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi epinard épinard 1.5 € pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi Sequ rotini epinard épinard 1.5 € Sequ pici epinard épinard 1.5 €
  • 168. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 169. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé 111001 0101... . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 170. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 171. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 172. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé 100100 101... Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 173. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé farine bio 1.1 € Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 174. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 175. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé 100100 101... . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 176. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé oeufs bios 2.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 177. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 011110 0101... oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 178. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 179. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 100100 101... farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 180. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé blé bios 0.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 181. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé blé bios 0.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 011110 0101... farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 182. @cyrdup @tpierrain Exemple de pic de charge .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi système déjà chargé . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . 0110010 1100… OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 183. @cyrdup @tpierrain Exemple de pic de charge Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 184. @cyrdup @tpierrain Exemple de pic de charge Calc Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Enc .. .. .. .. .. .. .. . . . . .. Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 185. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc .. .. .. .. .. .. .. . . . . .. Enc .. .. .. .. .. .. .. . . . . .. Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… 0110010 1100… OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 186. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc Enc .. .. .. .. .. .. .. . . . . .. Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… 0110010 1100… OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 187. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi 0110010 1100… 0110010 1100… 0110010 1100… OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 188. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi 0110010 1100… 0110010 1100… 0110010 1100… OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  • 189. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi Oeufs bios 3.5 € OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.1 €
  • 190. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi Oeufs bios 3.5 € OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.1 €
  • 191. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi Oeufs bios 3.5 € !!! OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.1 € !!!
  • 192. @cyrdup @tpierrain Exemple de pic de charge Calc Calc Calc Enc Enc Enc Pasta pricer dec pen ne Gno cSEQchi Gno ScEQchi farf alle SEQ Gno cSEQchi SEQ Gno ScEQchi Gno cSEQchi Oeufs bios 3.5 € OEUFS BIOS 1.7 € blé bios 0.2 € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.1 € prix plus frais !!! !!! vieux prix
  • 193. @cyrdup @tpierrain En cas de pic de charge… comment dépenser sa CPU a bon escient ? la conflation
  • 194. @cyrdup @tpierrain La conflation ¨ C est le moyen d amortir les pics de charge quand le système est déjà bien occupé ¨
  • 195. @cyrdup @tpierrain 2 types de conflation le Balking Le dernier message sur le même sujet vient remplacer le précédent. ¨Annule et remplace¨ Oeufs bios 3.5 € Oeufs bios 4.1 € Oeufs bios 4.1 € t1 t0 t2 le merge le dernier message sur le même sujet vient fusionner son contenu avec le précédent Oeufs bios 5kg: 20 € Oeufs bios 1kg: 5 € Oeufs bios 1 kg: 5 € 5 kg: 20 € t1 t0 t2
  • 196. @cyrdup @tpierrain A ne pas confondre avec … La conflation n est pas de l échantillonage !
  • 197. Même pic de charge… avec conflation système déjà chargé @cyrdup @tpierrain gnocchi epinard Calc rotini epinard Calc Pici epinard Calc Enc Enc Enc Pasta pricer dec Sequ gnocchi epinard épinard 1.5 € Sequ rotini epinard épinard 1.5 € Sequ pici epinard épinard 1.5 €
  • 198. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 199. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc 111001 0101... dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 200. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 201. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 202. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc 100100 101... dec Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 203. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec farine bio 1.1 € Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  • 204. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 205. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc 100100 101... dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 206. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec oeufs bios 2.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 207. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.9 €
  • 208. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 011110 0101... farine bio 1.O1 e€ufs bios 3.9 €
  • 209. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.1 € farine bio 1.O1 e€ufs bios 3.9 €
  • 210. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 211. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 100100 101... farine bio 1.O1 e€ufs bios 3.5 €
  • 212. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec blé bios 0.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  • 213. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec blé bios 0.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 € 011110 0101...
  • 214. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . 0110010 OEUFS 1100… BIOS 1.7 € blé bios 0.2 € farine bio 1.O1 e€ufs bios 3.5 €
  • 215. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . 0110010 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  • 216. Même pic de charge… avec conflation @cyrdup @tpierrain Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Enc Enc Enc Pasta pricer dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  • 217. Même pic de charge… avec conflation @cyrdup @tpierrain Calc Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Enc .. .. .. .. .. .. .. . . . . .. Enc Enc Pasta pricer dec . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  • 218. Même pic de charge… avec conflation @cyrdup @tpierrain Calc Calc Calc Enc .. .. .. .. .. .. .. . . . . .. Enc .. .. .. .. .. .. .. . . . . .. Enc Pasta pricer dec . .. .. .. .. .. .. .. .. . 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… 0110010 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  • 219. Même pic de charge… avec conflation @cyrdup @tpierrain Calc Calc Calc Enc Enc .. .. .. .. .. .. .. . . . . .. Enc Pasta pricer dec 0110010 1100… . .. .. .. .. .. .. .. .. . 0110010 1100… 0110010 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  • 220. Même pic de charge… avec conflation @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec 0110010 1100… 0110010 1100… 0110010 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  • 221. Même pic de charge… avec conflation @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec 0110010 1100… 0110010 1100… 0110010 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  • 222. Même pic de charge… avec conflation @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 1.7 € blé bios 0.2 € farine bio 1.1 €
  • 223. Même pic de charge… avec conflation @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 1.7 € blé bios 0.2 € farine bio 1.1 € prix frais ;-/ engorgement limité
  • 224. @cyrdup @tpierrain Back pressure obligatoire ! ¨la conflation ne s exerce que sur un système déjà occupé ¨
  • 225. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec
  • 226. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer 111001 0101... dec
  • 227. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 €
  • 228. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 €
  • 229. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 €
  • 230. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer 100100 101... dec Oeufs bios 3.5 €
  • 231. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € farine bio 1.1 €
  • 232. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € farine bio 1.1 €
  • 233. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € farine bio 1.1 €
  • 234. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € 100100 101...
  • 235. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € Oeufs bios 3.9 €
  • 236. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € Oeufs bios 3.9 €
  • 237. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € Oeufs bios 3.9 € 011110 0101...
  • 238. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € farine bio 1.1 €
  • 239. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € farine bio 1.1 €
  • 240. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € farine bio 1.1 € 100100 101...
  • 241. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc farine bio 1.1 € Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € blé bios 0.2 €
  • 242. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc farine bio 1.1 € Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € blé bios 0.2 € 011110 0101...
  • 243. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc farine bio Blé 1.1 € bio 0.2 € Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € Oeufs bios 1.7 €
  • 244. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Blé bio 0.2 € farine bio 1.1 € Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € Oeufs bios 1.7 €
  • 245. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Blé bio 0.2 € farine bio 1.1 € Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € oeufs bios 1.7 €
  • 246. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc oeufs bios 1.7 € Blé bio 0.2 € farine bio 1.1 € Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 €
  • 247. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc oeufs bios 1.7 € Blé bio 0.2 € farine bio 1.1 € Oeufs bios 3.9 € Calc farine bio 1.1 € Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 € prend du retard par le centre !!!
  • 248. … pour que la conflation soit effective … @cyrdup @tpierrain évitez les buffer ou les files intermédiaires !
  • 249. @cyrdup @tpierrain Donc … Pour juguler les pics de charge
  • 251. Facteurs clés pour le succès • L’importance de la modélisation de votre //isme @cyrdup @tpierrain ! • L’importance de la mesure SLA percentiles !
  • 252. @cyrdup @tpierrain Un avis, maître ? ¨un ensemble de propriétés, un système Réactif est ¨
  • 253. Agenda • Banque d’investissement & marchés électroniques (–10mn) • Construisons ensemble un « Pricer » (–20mn) • Patterns: sequencer et conflation (–20mn) • Reactive Manifesto & Conclusion (– 5 mn) @cyrdup @tpierrain
  • 254. @cyrdup @tpierrain Reactive manifesto v2 react to events react to load : covered today
  • 255. Etre réactif … Ce n’est pas un marteau en or @cyrdup @tpierrain
  • 256. @cyrdup @tpierrain Etre réactif … C’est une forme particulière de design
  • 257. Une forme de design … … qui a besoin de nouvelles patterns @cyrdup @tpierrain
  • 258. @cyrdup @tpierrain Etre réactif … 1. Ce n’est pas un marteau en or 2. C’est une forme particulière de design 3. Qui a besoin de nouvelles patterns
  • 259. @cyrdup @tpierrain Une dernière chose …
  • 261. @cyrdup @tpierrain « Michonne » statement • Application scalable verticalement • Deadlock-free applications - OO composable dans un env // • Concurrence « digeste » (tout public) • Modèle de concurrence modifiable a posteriori • TDD friendly
  • 262. @cyrdup @tpierrain La philosophie Michonne • No lock-no deadlock • Approche pit of success • Une librairie, pas un framework • Des primitives plutôt que des acteurs • Modèle de composition façon « poupée russe » (sequencer, conflation, …) • Un modèle asynchrone
  • 263. Venez jouer avec nous ! Essayez Michonne ! ! pour aider à raffiner son API ! et/ou ! Rejoignez le projet en .NET, ou pour portage Java? Merci pour votre attention !
  • 264. @cyrdup @tpierrain Quelques références 1. Sites / blogs • http://www.reactivemanifesto.org/ • http://mechanical-sympathy.blogspot.fr/ (Martin THOMPSON) • http://dupdob.wordpress.com/ (many cores) • http://tpierrain.blogspot.fr/ (use case driven) 2. Vidéos • Metrics, Metrics everywhere (Coda HALE) https://www.youtube.com/watch?v=czes-oa0yik • Vidéo: How NOT to measure latency (Gil TENE) http://www.infoq.com/presentations/latency-pitfalls • React2014: https://www.youtube.com/user/reactconf/videos 3. Ouvrage: • Release It!: Design and deploy prod ready software (Michael T. NYGARD)