Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Faible latence, haut debit PerfUG (Septembre 2014)

1 306 vues

Publié le

vidéo disponible : http://tv.octo.com/videos/les-secrets-de-la-finance-pour-avoir-des-systemes-reactifs/

Comment concevoir des systèmes capables d’encaisser des dizaines de milliers d’updates par seconde sans s’engorger, ni dépasser la milli seconde de traitement ?

Comment écrire du code scalable qui reste lisible –mais garanti 100% sans deadlock ? Que recouvre le reactive manifesto ? et les termes : conflation, sequencer, immutable state ?

Après vous avoir présenté les besoins et contraintes du trading électronique, nous répondrons à toutes ces questions dans une session … résolument réactive.

Note: il s'agit de la présentation que nous avions faîte à DEVOXX France en Avril 2014, mais revue et corrigée pour notre session au PerfUG de Septembre (avec une nouvelle charte graphique donc)

Publié dans : Ingénierie
  • Soyez le premier à commenter

Faible latence, haut debit PerfUG (Septembre 2014)

  1. 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. 2. Qui sommes nous ? use case driven (blog) Many Cores (blog)
  3. 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. 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
  5. 5. http://upload.wikimedia.org/wikipedia/commons/b/b8@/Saco_yPradulou_pSt o@ck_tEpxiceharnrgaei.jnpg
  6. 6. @cyrdup @tpierrain Les activités de marché
  7. 7. Carnet d’ordres Prix Moteur
  8. 8. PAS COMPRIS?
  9. 9. @cyrdup @tpierrain Le supermarché
  10. 10. @cyrdup @tpierrain Les acteurs Investisseurs Market Makers Scalpers
  11. 11. @cyrdup @tpierrain Les automates Algo trading Arbitrage
  12. 12. @cyrdup @tpierrain Les enjeux • Complexité ! • Fiabilité/disponibilité ! • Capacité en volume ! • Latence ! !
  13. 13. @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
  14. 14. 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
  15. 15. Le Pasta Pricer
  16. 16. 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
  17. 17. 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
  18. 18. @cyrdup @tpierrain Designons notre Pasta pricer! en mode ¨EVENT STORMING¨
  19. 19. Bases pour notre représentation @cyrdup @tpierrain Pasta pricer on des flux d evenements reçoit .. on publie .. dans la même boite...
  20. 20. Bases pour notre représentation @cyrdup @tpierrain Pasta pricer 3 étapes decoder Calculer encoder
  21. 21. 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
  22. 22. @cyrdup @tpierrain Designons notre Pasta pricer! on commence?
  23. 23. @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
  24. 24. @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
  25. 25. @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
  26. 26. @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 €
  27. 27. @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
  28. 28. @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
  29. 29. @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
  30. 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. 31. @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 €
  32. 32. @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
  33. 33. @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
  34. 34. @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
  35. 35. @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
  36. 36. @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
  37. 37. @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
  38. 38. @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
  39. 39. @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
  40. 40. @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
  41. 41. @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
  42. 42. @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…
  43. 43. @cyrdup @tpierrain Approche mono thread dec Calc Enc Oeufs 1.5 € Pasta pricer —- — —— pen ne pen ne pen ne 01100 10110 0…
  44. 44. @cyrdup @tpierrain Approche mono thread Pasta pricer dec Calc Enc Oeufs 1.5 € pen pen ——- ne ne 01100 10110 0…
  45. 45. @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
  46. 46. @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 !
  47. 47. 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
  48. 48. 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...
  49. 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 Oeufs bios 3.5 €
  50. 50. 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 €
  51. 51. 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 €
  52. 52. 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 €
  53. 53. 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 €
  54. 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. 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 1110 1001 011 1110 0... 111101 . ..... ....
  56. 56. 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 . ..... ....
  57. 57. 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 ——— ——
  58. 58. 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 . ..... .... —- —
  59. 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 1110 1001 011 1110 0... 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  60. 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. 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. 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. 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. 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 111101 . ..... .... —- — —- — —- — —- — ——— —— gno cchi
  65. 65. 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
  66. 66. 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
  67. 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 —- — —- — —- — —- — ——— —— gno cchi
  68. 68. 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 !
  69. 69. @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
  70. 70. @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
  71. 71. @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
  72. 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. 73. @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 €
  74. 74. @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 €
  75. 75. @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 €
  76. 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 011000 11010 gnocchi bio penne bio … 111110 00110 …
  77. 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 gnocchi bio penne bio 011000 11010 … 111110 00110 …
  78. 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 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
  79. 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. 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. 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 … pen ne pen ne
  82. 82. @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
  83. 83. @cyrdup @tpierrain Approche « pool de thread » c est mieux, non?
  84. 84. @cyrdup @tpierrain Approche « pool de thread » race conditions ?!?
  85. 85. 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
  86. 86. 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
  87. 87. 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
  88. 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. 89. 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
  90. 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 000111 0010 ...
  91. 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 carton +1.2 €
  92. 92. 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
  93. 93. 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 €
  94. 94. 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
  95. 95. 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
  96. 96. 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 !!!
  97. 97. 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 €
  98. 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 4.4 € 011001 01100 … 5.4 €
  99. 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 011001 01100 … 110001 0111 … 5.4 € 4.4 €
  100. 100. 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
  101. 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 dernier prix pour les gnocchis: 4.4 € !!!
  102. 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 110001 0111 … 4.4 € pen ne pen ne dernier prix pour les gnocchis: 4.4 € !!!
  103. 103. 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
  104. 104. Approche multi tasks / thread pool @cyrdup @tpierrain respecter l ordre OK, mais comment? avec des locks?
  105. 105. Approche multi tasks / thread pool @cyrdup @tpierrain les vieux maitres en multithreading ont un dicton : ¨qui dit lock ... ... dit deadlock¨
  106. 106. 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
  107. 107. En réalité, si on résume encore + @cyrdup @tpierrain On veut rendre la programmation reactive accessible à tous et sans danger
  108. 108. 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
  109. 109. Programmation réactive pour tous ! @cyrdup @tpierrain Notre solution: ¨Le sequencer¨
  110. 110. 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 //
  111. 111. Programmation réactive pour tous ! @cyrdup @tpierrain ¨Le sequencer¨ 8 9 ! 1 2 1 2 3
  112. 112. @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
  113. 113. @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
  114. 114. @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
  115. 115. @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
  116. 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. 117. @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
  118. 118. @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
  119. 119. @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
  120. 120. @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
  121. 121. @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
  122. 122. @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
  123. 123. @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
  124. 124. @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
  125. 125. @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
  126. 126. @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
  127. 127. @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
  128. 128. @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
  129. 129. @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
  130. 130. @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
  131. 131. @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
  132. 132. @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
  133. 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. 134. @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
  135. 135. @cyrdup @tpierrain Le sequencer en action on REFAIT LE MATCH ?
  136. 136. @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
  137. 137. @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
  138. 138. @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
  139. 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. 140. @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
  141. 141. @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
  142. 142. @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
  143. 143. @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
  144. 144. @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
  145. 145. @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
  146. 146. @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
  147. 147. @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
  148. 148. @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
  149. 149. @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
  150. 150. @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
  151. 151. @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
  152. 152. @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
  153. 153. @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
  154. 154. @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
  155. 155. @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
  156. 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. 157. @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
  158. 158. Et sous le capot du sequencer ? @cyrdup @tpierrain
  159. 159. l’implémentation elle, utilise des locks ou des CAS (Compare and Swap) en interne @cyrdup @tpierrain « Complexité » encapsulée
  160. 160. Pour un usage d’une simplicité … @cyrdup @tpierrain ! interface IUnitOfExecution { void dispatch(Action action); }
  161. 161. @cyrdup @tpierrain Du code ! du code !
  162. 162. Pasta Pricer powered by @cyrdup @tpierrain
  163. 163. @cyrdup @tpierrain Avantages du sequencer simplicité lisibilité fiabilité non bloquant ! en revanche ... ! il va nous manquer un autre outil ...
  164. 164. @cyrdup @tpierrain Un autre outil ?!? ¨et oui ... de l eau qui dort, se méfier il faut ¨
  165. 165. Le problème des pics de charge Comment les absorber sans prendre de la @cyrdup @tpierrain latence?
  166. 166. 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 €
  167. 167. @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é . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  168. 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é 111001 0101... . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  169. 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é Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  170. 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. 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é 100100 101... Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  172. 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é farine bio 1.1 € Oeufs bios 3.5 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  173. 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.O1 e€ufs bios 3.5 €
  174. 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é 100100 101... . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  175. 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é oeufs bios 2.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.O1 e€ufs bios 3.5 €
  176. 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é . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 011110 0101... oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  177. 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é . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  178. 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é . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 100100 101... farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  179. 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é blé bios 0.2 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  180. 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 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € 011110 0101... farine bio 1.1 € oeufs bios f2a.2ri n€e bio 1.O1 e€ufs bios 3.5 €
  181. 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é . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . 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 €
  182. 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 . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . 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 €
  183. 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… . .. .. .. .. .. .. .. .. . 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. 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. 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. 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. 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. 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 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 €
  189. 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. 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. 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 € prix plus frais !!! !!! vieux prix
  192. 192. @cyrdup @tpierrain En cas de pic de charge… comment dépenser sa CPU a bon escient ? la conflation
  193. 193. @cyrdup @tpierrain La conflation ¨ C est le moyen d amortir les pics de charge quand le système est déjà bien occupé ¨
  194. 194. @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
  195. 195. @cyrdup @tpierrain A ne pas confondre avec … La conflation n est pas de l échantillonage !
  196. 196. 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 €
  197. 197. Même pic de charge… avec conflation Pasta pricer système déjà chargé @cyrdup @tpierrain .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc .. .. .. .. .. .. .. . . . . .. Calc Enc Enc Enc dec . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  198. 198. 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 . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  199. 199. 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 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  200. 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. 201. 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 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  202. 202. 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 € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. € . .. .. .. .. .. .. .. .. . .. .. .. . .. .. €
  203. 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.O1 e€ufs bios 3.5 €
  204. 204. 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 €
  205. 205. 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 €
  206. 206. 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 €
  207. 207. 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 €
  208. 208. 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 €
  209. 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.O1 e€ufs bios 3.5 €
  210. 210. 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 €
  211. 211. 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 €
  212. 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 € 011110 0101...
  213. 213. 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 €
  214. 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 1100… blé bios 0.2 € farine bio 1.O1 e€ufs bios 1.7 €
  215. 215. 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 €
  216. 216. 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 €
  217. 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. 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. 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. 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. 221. 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 €
  222. 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 € prix frais ;-/ engorgement limité
  223. 223. @cyrdup @tpierrain Back pressure obligatoire ! ¨la conflation ne s exerce que sur un système déjà occupé ¨
  224. 224. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec
  225. 225. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer 111001 0101... dec
  226. 226. L’impact négatif des buffers intermédiaires… @cyrdup @tpierrain Calc Calc Calc Enc Enc Enc Pasta pricer dec Oeufs bios 3.5 €
  227. 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. 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. 229. 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 €
  230. 230. 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 €
  231. 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. 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. 233. 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...
  234. 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 € Oeufs bios 3.9 €
  235. 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. 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 € 011110 0101...
  237. 237. 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 €
  238. 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. 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 € 100100 101...
  240. 240. 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 €
  241. 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 € 011110 0101...
  242. 242. 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 €
  243. 243. 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 €
  244. 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. 245. 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 €
  246. 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 € prend du retard par le centre !!!
  247. 247. … pour que la conflation soit effective … @cyrdup @tpierrain évitez les buffer ou les files intermédiaires !
  248. 248. @cyrdup @tpierrain Donc … Pour juguler les pics de charge
  249. 249. Demo @cyrdup @tpierrain
  250. 250. 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 !
  251. 251. @cyrdup @tpierrain Un avis, maître ? ¨un ensemble de propriétés, un système Réactif est ¨
  252. 252. 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
  253. 253. @cyrdup @tpierrain Reactive manifesto v2 react to events react to load : covered today
  254. 254. Etre réactif … Ce n’est pas un marteau en or @cyrdup @tpierrain
  255. 255. @cyrdup @tpierrain Etre réactif … C’est une forme particulière de design
  256. 256. Une forme de design … … qui a besoin de nouvelles patterns @cyrdup @tpierrain
  257. 257. @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
  258. 258. @cyrdup @tpierrain Une dernière chose …
  259. 259. @cyrdup @tpierrain
  260. 260. @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
  261. 261. @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
  262. 262. 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 !
  263. 263. @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)

×