Démystifions le machine learning avec spark par David Martin pour le Salon B...Ippon
Les volumes de données permettent d’envisager de nouveaux usages, pour la plupart rendus accessibles grâce aux algorithmes de Machine Learning. Découvrez ce qu’est le Machine Learning par de multiples exemples. Comprenez les enjeux autour de la donnée et comment passer de la donnée brute aux prédictions en identifiant les différentes étapes intermédiaires. Enfin, découvrez comment mettre ces concepts en oeuvre avec une présentation des outils à disposition aujourd’hui, et un focus sur Spark, son architecture et les possibilités offertes autour du Machine Learning.
Softshake 2015 - Comment tester et optimiser la performance d'un SI ?cyrilpicat
Optimiser et tester la performance d'une seule application devient un sujet maîtrisé, avec des méthodes et des outils dorénavant rodés. Pour autant, réaliser des tests significatifs à un coût raisonnable reste un challenge.
Qu'en est-il dans le cas d'un SI tout entier ? Si le "service" rendu à l'utilisateur repose sur plusieurs applications, les pratiques sont beaucoup plus balbutiantes et beaucoup de questions se posent : faut-il tester chaque application en isolation ? Y a-t-il un vrai ROI à ces tests, ou est-ce un chantier pharaonique ?
A l'heure où les architectures doivent de plus en plus exposer et consommer des services, à l'heure de l'expérience digitale, le temps de réponse ressenti par un utilisateur ne doit plus être une inconnue ! Et ceci même si sa réponse sollicite plusieurs applications dans mon SI.
Aujourd'hui les outils techniques et méthodologiques existent, nous les avons utilisés. Cette session sera l'occasion de proposer notre méthode pour aborder ces tests, basé sur un REX dans le trading bancaire.
Démystifions le machine learning avec spark par David Martin pour le Salon B...Ippon
Les volumes de données permettent d’envisager de nouveaux usages, pour la plupart rendus accessibles grâce aux algorithmes de Machine Learning. Découvrez ce qu’est le Machine Learning par de multiples exemples. Comprenez les enjeux autour de la donnée et comment passer de la donnée brute aux prédictions en identifiant les différentes étapes intermédiaires. Enfin, découvrez comment mettre ces concepts en oeuvre avec une présentation des outils à disposition aujourd’hui, et un focus sur Spark, son architecture et les possibilités offertes autour du Machine Learning.
Softshake 2015 - Comment tester et optimiser la performance d'un SI ?cyrilpicat
Optimiser et tester la performance d'une seule application devient un sujet maîtrisé, avec des méthodes et des outils dorénavant rodés. Pour autant, réaliser des tests significatifs à un coût raisonnable reste un challenge.
Qu'en est-il dans le cas d'un SI tout entier ? Si le "service" rendu à l'utilisateur repose sur plusieurs applications, les pratiques sont beaucoup plus balbutiantes et beaucoup de questions se posent : faut-il tester chaque application en isolation ? Y a-t-il un vrai ROI à ces tests, ou est-ce un chantier pharaonique ?
A l'heure où les architectures doivent de plus en plus exposer et consommer des services, à l'heure de l'expérience digitale, le temps de réponse ressenti par un utilisateur ne doit plus être une inconnue ! Et ceci même si sa réponse sollicite plusieurs applications dans mon SI.
Aujourd'hui les outils techniques et méthodologiques existent, nous les avons utilisés. Cette session sera l'occasion de proposer notre méthode pour aborder ces tests, basé sur un REX dans le trading bancaire.
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4TestMimoun Kissi 🤖
Comment intégrer l'IA dans les tests logiciels ?
Julien Van Quackebeke (CEO All4Test) nous a fait le plaisir de répondre à cette question lors d'un meetup organisé par Nicolas Canseco (Ministry Of Testing) et acceuilli par Publicis.Sapient
Agenda :
Les enjeux de la performance d'un site Web
Les différents éléments de performance d'un site Web
Infrastructure, architecture technique, tuning, architecture applicative, WebPerf
L'obsession de la mesure
Les outils
Les quickwins
Caches, upscaling, outscaling, sharding
La démarche de test de charge
Méthodologie, outils, types de test, données de test
La démarche PDCA
Intégrer les tests de charge au cycle de développement
Environnement éphémère
Oxalide MorningTech #2 - Démarche de performance
2ème MorningTech @Oxalide, animé par Adrien Le Priol (@Priolix) et Ludovic Piot (@lpiot), le 28 février 2017.
Une vue d'ensemble sur la démarche et les outils pour aborder et maîtriser la performance de son site Web.
En 2012, Amazon publiait une étude indiquant que chaque seconde de performance perdue sur son site de commerce lui coûtait $1.6 milliards de chiffre d'affaire.
Par delà ce chiffre colossal avancé par le géant du Web, il est une réalité business : plus un site est lent, et moins les utilisateurs sont enclin à naviguer dessus. Les smartphones et le SoLoMo exacerbent cette réalité avec encore plus depuis 10 ans maintenant.
Sur le terrain, l'architecture technique des sites Web, de plus en plus complexe, rendent ses performances impossibles à prédire : complexité des développements applicatifs, multitude des composants impliqués dans l'architecture technique, recours à des services tiers (issus du SI de votre entreprise, ou de services tiers), big data, machine learning…
Une seule façon de prédire les performances : tester… en situation réelle.
A travers les différentes étapes d'une démarche d'optimisation des performances d'un site Web, les enjeux et les écueils d'une telle démarche vous seront détaillés.
Subject: Oxalide's MorningTech talk about an overview of how to deal with performance in a Web site.
Date: 28-feb-2017
Speakers: Adrien Le Priol (@Priolix, @Oxalide) and Ludovic Piot (@lpiot, @Oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-morning-tech-number-2-demarche-performance
Lien SlideShare : https://www.slideshare.net/LudovicPiot/morning-tech-2-demarche-performance-slides
YouTube Video capture: https://youtu.be/a8jSbvyBzYU
Main topics:
* Les enjeux de la performance d'un site Web
* Les différents éléments de performance d'un site Web
** Infrastructure, architecture technique, tuning, architecture applicative, WebPerf
* L'obsession de la mesure
* Les outils
* Les quickwins
** Caches, upscaling, outscaling, sharding
* La démarche de test de charge
** Méthodologie, outils, types de test, données de test
* La démarche PDCA
** Intégrer les tests de charge au cycle de développement
** Environnement éphémère
* Questions / Réponses
ABTest : un outil indispensable pour être « data-driven » ? par Laurent VIONLa Cuisine du Web
Quand on pense data, on a souvent une vision très « produit » de la chose au travers de concepts très abstraits tels que « l’expérience client personnalisée », « l’analyse prédictive », voir même « l’intelligence artificielle ».Mais bien avant d’influer sur notre business, si l’organisation même de nos entreprises et nos méthodes de travail étaient en réalité les premières victimes de la révolution « data » ?
Focus sur un outil indispensable pour toute entreprise « data-driven » : l’ABTestUne présentation en 3 temps :
1 – Rappel assez général sur le sujet : Qu’est-ce qu’un ABTest ? Quand faire un ABTest ? Comment faire un ABTest ? Comment analyser un ABTest ?
2 – Retour d’expérience sur notre outil d’ABTest interne chez M6Web.
3 – Conséquences sur nos méthodes de travail et notre organisation.
Ce document est un rapport sur mon travail pour l'application des algorithmes de 'Machine Learning' par RapidMiner sur une base de données de e-bay en Allemagne.
git: https://github.com/hannachiMajdi/Machine-learning-avec-RapidMiner
email: majdi_hannachi@outlook.fr
Social Network Analysis Utilizing Big Data TechnologyImad ALILAT
Collecting, collating and carrying out complex data analysis(weblogs & KPI). Also involved in reporting statistical findings to work colleagues and senior managers.
Au delà de ce buzz word :
Les grands concepts
Les étapes clés des projets Big Data et les technologies à utiliser (stockage, ingestion, …)
Les enjeux des architectures Big Data (architecture lambda, …)
L'intelligence artificielle (machine learning, deep learning, …)
Et un cas d'usage du big data sur AWS autour de l'utilisation des données gyroscopiques de vos internautes mobiles.
Session donnée lors du Drupal Camp Lyon 2012. Présentant les différentes alternatives pour gérer la mobilité avec Drupal.
- Responsive Design
- Contextes mobiles (themes mobiles)
- Applications Natives et intégrations en Web Services ou HTML5
Comment le Centre Hospitalier Laborit dématérialise ses processus administratifsNuxeo
Le Centre Hospitalier Laborit, basé à Poitiers, est un établissement public en psychiatrie et santé mentale employant plus de 1500 agents regroupant personnel soignant, médecins et personnel administratif.
Documentation institutionnelle, plannings, gestion des marchés, SIRH des médecins… Le CH Laborit souhaitait dématérialiser au maximum l’ensemble de ses processus documentaires, casser les silos d’information et structurer au mieux ces données non structurées.
Avec des projets documentaires aux spécificités diverses, le CH Laborit a choisi Nuxeo notamment pour Nuxeo Studio, son outil de développement low-code facilitant la création d’applications de contenus.
Au travers de ce webinar, découvrez comment le CH Laborit utilise Nuxeo pour :
- Dématérialiser l’ensemble de ses processus de gestion documentaire
- Répondre aux divers besoin métiers grâce au développement rapide d’applications dédiées
- Limiter les freins au changement grâce à une interface intuitive et commune aux différentes applications
Oxalide MorningTech #1 - BigData
1er MorningTech @Oxalide, animé par Ludovic Piot (@lpiot), le 15 décembre 2016.
Pour cette 1ère édition du Morning Tech nous vous proposons une overview sur un des thèmes du moment : le Big Data.
Au delà de ce buzz word nous aborderons :
Les grands concepts
Les étapes clés des projets Big Data et les technologies à utiliser (stockage, ingestion, …)
Les enjeux des architectures Big Data (architecture lambda, …)
L'intelligence artificielle (machine learning, deep learning, …)
Et nous finirons par un cas d'usage du big data sur AWS autour de l'utilisation des données gyroscopiques de vos internautes mobiles
Subject: Oxalide's 1st MorningTech talk about BigData.
Date: 15-dec-2016
Speakers: Ludovic Piot (@lpiot, @oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-morningtech-number-1-bigdata
Lien SlideShare : https://www.slideshare.net/LudovicPiot/oxalide-morningtech-1-bigdata
YouTube Video capture: https://youtu.be/7O85lRzvMY0
Main topics:
* Les grands enjeux du BigData
** les 3 V du Gartner : volume, variété, vélocité
* Le stockage des données
** datalake
** les technos
* L'ingestion des données
** ETL
** datastream
** les technos
* Les enjeux du compute
** map-reduce
** spark
** lambda architecture
* Démo d'une plateforme BigData sur AWS
* L'intelligence artificielle
** datascience exploratoire et notebooks,
** machine learning,
** deep learning,
** data pipeline
** les technos
* Pour aller plus loin
** La gouvernance des données
** La dataviz
Restructurer un legacy comment et pourquoiMarc Bojoly
Présentation du talk de Marc Bojoly - OCTO Technology
"En tant que programmeur, en tant qu’architecte nous voulons
tous partir d’une feuille blanche et construire quelque chose de
grand", nous dit sur son blog joelonsoftware.
Mais après 5 ans de développement en Java, est-ce pertinent ?
Est-ce le bon moment alors que le système doit absorber un
nouveau métier le plus vite possible ? Et si re-construire sur le
legacy était la solution pour réussir un tel défi ?
IA et Test - MeetUp MoT - Julien Van Quackebeke - CEO All4TestMimoun Kissi 🤖
Comment intégrer l'IA dans les tests logiciels ?
Julien Van Quackebeke (CEO All4Test) nous a fait le plaisir de répondre à cette question lors d'un meetup organisé par Nicolas Canseco (Ministry Of Testing) et acceuilli par Publicis.Sapient
Agenda :
Les enjeux de la performance d'un site Web
Les différents éléments de performance d'un site Web
Infrastructure, architecture technique, tuning, architecture applicative, WebPerf
L'obsession de la mesure
Les outils
Les quickwins
Caches, upscaling, outscaling, sharding
La démarche de test de charge
Méthodologie, outils, types de test, données de test
La démarche PDCA
Intégrer les tests de charge au cycle de développement
Environnement éphémère
Oxalide MorningTech #2 - Démarche de performance
2ème MorningTech @Oxalide, animé par Adrien Le Priol (@Priolix) et Ludovic Piot (@lpiot), le 28 février 2017.
Une vue d'ensemble sur la démarche et les outils pour aborder et maîtriser la performance de son site Web.
En 2012, Amazon publiait une étude indiquant que chaque seconde de performance perdue sur son site de commerce lui coûtait $1.6 milliards de chiffre d'affaire.
Par delà ce chiffre colossal avancé par le géant du Web, il est une réalité business : plus un site est lent, et moins les utilisateurs sont enclin à naviguer dessus. Les smartphones et le SoLoMo exacerbent cette réalité avec encore plus depuis 10 ans maintenant.
Sur le terrain, l'architecture technique des sites Web, de plus en plus complexe, rendent ses performances impossibles à prédire : complexité des développements applicatifs, multitude des composants impliqués dans l'architecture technique, recours à des services tiers (issus du SI de votre entreprise, ou de services tiers), big data, machine learning…
Une seule façon de prédire les performances : tester… en situation réelle.
A travers les différentes étapes d'une démarche d'optimisation des performances d'un site Web, les enjeux et les écueils d'une telle démarche vous seront détaillés.
Subject: Oxalide's MorningTech talk about an overview of how to deal with performance in a Web site.
Date: 28-feb-2017
Speakers: Adrien Le Priol (@Priolix, @Oxalide) and Ludovic Piot (@lpiot, @Oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-morning-tech-number-2-demarche-performance
Lien SlideShare : https://www.slideshare.net/LudovicPiot/morning-tech-2-demarche-performance-slides
YouTube Video capture: https://youtu.be/a8jSbvyBzYU
Main topics:
* Les enjeux de la performance d'un site Web
* Les différents éléments de performance d'un site Web
** Infrastructure, architecture technique, tuning, architecture applicative, WebPerf
* L'obsession de la mesure
* Les outils
* Les quickwins
** Caches, upscaling, outscaling, sharding
* La démarche de test de charge
** Méthodologie, outils, types de test, données de test
* La démarche PDCA
** Intégrer les tests de charge au cycle de développement
** Environnement éphémère
* Questions / Réponses
ABTest : un outil indispensable pour être « data-driven » ? par Laurent VIONLa Cuisine du Web
Quand on pense data, on a souvent une vision très « produit » de la chose au travers de concepts très abstraits tels que « l’expérience client personnalisée », « l’analyse prédictive », voir même « l’intelligence artificielle ».Mais bien avant d’influer sur notre business, si l’organisation même de nos entreprises et nos méthodes de travail étaient en réalité les premières victimes de la révolution « data » ?
Focus sur un outil indispensable pour toute entreprise « data-driven » : l’ABTestUne présentation en 3 temps :
1 – Rappel assez général sur le sujet : Qu’est-ce qu’un ABTest ? Quand faire un ABTest ? Comment faire un ABTest ? Comment analyser un ABTest ?
2 – Retour d’expérience sur notre outil d’ABTest interne chez M6Web.
3 – Conséquences sur nos méthodes de travail et notre organisation.
Ce document est un rapport sur mon travail pour l'application des algorithmes de 'Machine Learning' par RapidMiner sur une base de données de e-bay en Allemagne.
git: https://github.com/hannachiMajdi/Machine-learning-avec-RapidMiner
email: majdi_hannachi@outlook.fr
Social Network Analysis Utilizing Big Data TechnologyImad ALILAT
Collecting, collating and carrying out complex data analysis(weblogs & KPI). Also involved in reporting statistical findings to work colleagues and senior managers.
Au delà de ce buzz word :
Les grands concepts
Les étapes clés des projets Big Data et les technologies à utiliser (stockage, ingestion, …)
Les enjeux des architectures Big Data (architecture lambda, …)
L'intelligence artificielle (machine learning, deep learning, …)
Et un cas d'usage du big data sur AWS autour de l'utilisation des données gyroscopiques de vos internautes mobiles.
Session donnée lors du Drupal Camp Lyon 2012. Présentant les différentes alternatives pour gérer la mobilité avec Drupal.
- Responsive Design
- Contextes mobiles (themes mobiles)
- Applications Natives et intégrations en Web Services ou HTML5
Comment le Centre Hospitalier Laborit dématérialise ses processus administratifsNuxeo
Le Centre Hospitalier Laborit, basé à Poitiers, est un établissement public en psychiatrie et santé mentale employant plus de 1500 agents regroupant personnel soignant, médecins et personnel administratif.
Documentation institutionnelle, plannings, gestion des marchés, SIRH des médecins… Le CH Laborit souhaitait dématérialiser au maximum l’ensemble de ses processus documentaires, casser les silos d’information et structurer au mieux ces données non structurées.
Avec des projets documentaires aux spécificités diverses, le CH Laborit a choisi Nuxeo notamment pour Nuxeo Studio, son outil de développement low-code facilitant la création d’applications de contenus.
Au travers de ce webinar, découvrez comment le CH Laborit utilise Nuxeo pour :
- Dématérialiser l’ensemble de ses processus de gestion documentaire
- Répondre aux divers besoin métiers grâce au développement rapide d’applications dédiées
- Limiter les freins au changement grâce à une interface intuitive et commune aux différentes applications
Oxalide MorningTech #1 - BigData
1er MorningTech @Oxalide, animé par Ludovic Piot (@lpiot), le 15 décembre 2016.
Pour cette 1ère édition du Morning Tech nous vous proposons une overview sur un des thèmes du moment : le Big Data.
Au delà de ce buzz word nous aborderons :
Les grands concepts
Les étapes clés des projets Big Data et les technologies à utiliser (stockage, ingestion, …)
Les enjeux des architectures Big Data (architecture lambda, …)
L'intelligence artificielle (machine learning, deep learning, …)
Et nous finirons par un cas d'usage du big data sur AWS autour de l'utilisation des données gyroscopiques de vos internautes mobiles
Subject: Oxalide's 1st MorningTech talk about BigData.
Date: 15-dec-2016
Speakers: Ludovic Piot (@lpiot, @oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-morningtech-number-1-bigdata
Lien SlideShare : https://www.slideshare.net/LudovicPiot/oxalide-morningtech-1-bigdata
YouTube Video capture: https://youtu.be/7O85lRzvMY0
Main topics:
* Les grands enjeux du BigData
** les 3 V du Gartner : volume, variété, vélocité
* Le stockage des données
** datalake
** les technos
* L'ingestion des données
** ETL
** datastream
** les technos
* Les enjeux du compute
** map-reduce
** spark
** lambda architecture
* Démo d'une plateforme BigData sur AWS
* L'intelligence artificielle
** datascience exploratoire et notebooks,
** machine learning,
** deep learning,
** data pipeline
** les technos
* Pour aller plus loin
** La gouvernance des données
** La dataviz
Restructurer un legacy comment et pourquoiMarc Bojoly
Présentation du talk de Marc Bojoly - OCTO Technology
"En tant que programmeur, en tant qu’architecte nous voulons
tous partir d’une feuille blanche et construire quelque chose de
grand", nous dit sur son blog joelonsoftware.
Mais après 5 ans de développement en Java, est-ce pertinent ?
Est-ce le bon moment alors que le système doit absorber un
nouveau métier le plus vite possible ? Et si re-construire sur le
legacy était la solution pour réussir un tel défi ?
Petit-déjeuner MapReduce-La révolution dans l’analyse des BigDataMarc Bojoly
Big Data, MapReduce, calculs distribués, sont autant de buzz words et de concepts cantonnés jusqu’à maintenant à quelques acteurs spécifiques. Pourtant, il est un état de fait : nous sommes assis sur une quantité gigantesque de données dont il est difficile d’extraire l’information… D’autre part MapReduce est une solution éprouvée pour analyser d’énormes quantités de données (ou Big Data). Elle a, par exemple, été mise en œuvre par Google pour indexer le web, par LinkedIn pour calculer ses campagnes d’email… Dans ces conditions, ces concepts ont-ils un intérêt dans nos SI ? Quel est le niveau de maturité de ces solutions ? Cet atelier, co-organisé par OCTO Technology (www.octo.com) et Plaform (www.platform.com), démontrera que de telles solutions font sens dans nos projets SI. - See more at: http://blog.octo.com/petit-dejeuner-mapreduce-la-revolution-dans-lanalyse-des-bigdata-le-27-septembre/#sthash.GvRo8gOQ.dpuf
L'avenir de Java : Erlang, Haskell ou RubyMarc Bojoly
Les nouveaux langages sont de plus en plus présents et bouleversent un eco- systeme dominé par Java: Ruby, et notamment Rails, annoncent des productivités faisant rêver les chefs de projet Java; d'autres proposent la gestion de concurrence et de parallélisme (souvent problématiques pour les programmeurs Java) nativement dans la langage. Alors que faire? Jeter Java et la JVM, rester sourd aux chants des sirènes? Dans cette session nous aborderons les limites de la plateforme Java et comment concilier les meilleurs des mondes.
Quelles évolutions fonderont l’avenir des serveurs d’application ?Marc Bojoly
Quelles évolutions fonderont l'avenir des serveurs d'application ?
Depuis 10 ans les serveurs d'applications se sont imposés dans l'informatique de gestion.
Mais aujourd'hui des offres innovantes bousculent les anciennes règles et standards. Les architectures cloud et grid rompent avec le découpage en 3 tiers. Des offres modulaires s'opposent aux outils dotés de multiples fonctionnalités. Des nouveaux frameworks java
mais également Grails ou JRuby on Rails challengent les API JEE tout en s'appuyant sur l'existant.
En nous basant sur la plateforme Java, nous balaieront les principales innovations qui dessinent le futur des serveurs d'application. Que peuvent-elles apporter ? Que vont-elles remettre en cause ou remplacer ?
Les grilles transactionnelles, enfin des solutions pour l’informatique de ges...Marc Bojoly
Les grilles transactionnelles, enfin des solutions pour l'informatique de gestion?
En 5 ans les grilles se sont imposée dans quelques niches métiers. Belle revanche pour ce matériel issu de la bureautique qui se pose en alternative aux grands systèmes en faisant le choix de la répartition des calculs. Si le domaine du calcul intensif à révélé les grilles, force est de constater que cet usage très spécialisé en restreint les cas d'usages. Les grilles de données permettent aujourd'hui d'étendre très largement leur champ d'application. Comment fait-on pour répartir du code, de la données, des transactions ? Telles sont les questions que nous souhaitons aborder au travers d'un exemple de traitement bancaire.
2. Marc BOJOLY
OCTO Technology Paris, manager et consultant
Co-fondateur du Performance User Group Paris
Cyril PICAT
OCTO Technology Lausanne, consultant
3. Le projet : migration d'une banque vers une
nouvelle plateforme titres
7. Méconnaissances
Nier l'existence du problème On a bien travaillé, ça va passer
Nier l'existence de solutions C'est impossible à tester sauf en prod
Nier la fiabilité des solutions La charge ne sera pas représentative
Mettre en doute ses capacités On n'y arrivera jamais
8. Idées reçues sur les pré-requis
Une pré-production identique à la production
Simuler l'ensemble des activités de la banque
9. Tester en automatique ? Impossible même avec
Idées reçues sur les tests de charge
<un nom de
produit ici>
11. Ce sont des idées reçues
Notre objectif, vous montrer
comment adapter vos pré-requis à vos enjeux
comment aborder les tests de charge dans un SI
comment ne pas être piégé par les diagnostics préconçus
12. Dans un monde parfait...
“Fais de ta vie un rêve, et d'un rêve une
réalité.” Antoine de Saint-Exupéry - Cahiers
de Saint-Exupéry (1900-1944)
20. Il faut "cadrer" le
chantier
Factualiser les volumes
existants et cibles
Lister les problèmes
existants
Brainstormer sur les
problèmes potentiels
21. Les problèmes
"usuels"
1. Capacité en terme de
nombre de
transactions/jour
2. Augmentation de
volumétrie (x2)
3. SLA temps de réponse
end-to-end
4. Lenteurs actuelles
5. Augmentation du
nombre d'utilisateurs
6. Impact sur la durée des
batchs
7. Latence et temps de
réponse pour les
utilisateurs distants
22. Et ensuite ?
La carte vous aide à visualiser et à prioriser, elle ne "résout"
pas les problèmes
Chaque problème reste complexe et lié au reste du SI
23. Diviser pour mieux régner
2 patterns
Diviser/découpler : passer d'un test de N systèmes à un
test de k<N systèmes (idéalement 1)
Simplifier : réduire la dimensionnalité (cas de tests,
données etc.)
26. Et maintenant ?
Ne prévoyez pas un test de charge pour tous les problèmes !
27. Penser à d'autres outils
Analyse de l'existant
Modélisation et extrapolation
Test de charge de l'existant (données,
systèmes)
Test de charge de la cible (données,
systèmes)
28. Où pouvez-vous vous "planter" ?
Mauvaise connaissance de la performance existante
Mauvaise connaissance des usages existants
30. Délimiter le périmètre testé
Car un test de charge reste un test automatisé
Car un test en erreur ne sert à rien
Comment ?
Choisissez soigneusement votre jeu de données
Ou développez des bouchons
34. Modélisaton : soyez prédictifs
Si vous n'avez pas de statistiques production,
proposez un modèle de prévision du nombre d'utilisateurs
35. Modélisation : soyez prédictifs
Si vous n'avez pas de statistiques production,
proposez un modèle de prévision de leur utilisation
36. Modélisation : comment l'utiliser ?
Définissez dans vos tests d'injection locaux le nombre
d'utilisateurs "simultanés" et le temps de réflexion
val clientSearchChain = group("client_search_page") {
exec(http("client_search_html")
.get("""/ebankingAdmin/xxxxx/root/contract/contractlist/""")
}
).pause(7,8) //Pause between 7 and 8 seconds
val scn = scenario("AdminSimulation").repeat(1) {
exitBlockOnFail {
exec(loginChain).exec(clientSearchChain)//No logout, 90% of use
rs don't
}
}
setUp(scn.inject(rampUsers(120).over(60))).protocols(httpProtocol) //Th
is will go from 0 to 120 users in 60 seconds
37. Tests de charge par application
Une brique de base de la performance du SI
Comment fait-on pour manger un éléphant ?
Bouchée par bouchée.
41. Temps de réponse ~ 190 ms.
$ ./sh/poc1.sh
% Total % Received % Xferd Average Speed Time Time Time C
urrent
Dload Upload Total Spent Left Speed
100 253 100 161 100 92 789 450 :: :: ::
789
Call HTTP Ressources : For an HTTP ressources total of 0.0 ms.
Call the database 7 times during 14 ms. each for a total of 118 ms.
CPU intensive compute 186 ms.
43. DEMO & Quizz : quel est le temps de
réponse d'une chaîne applicative dans un SI
?
7 applications identiques à la précédente (70 ms. de
traitement, 7 x 14 ms. de BD)
Appels synchrones séquentiels
45. Temps de réponse : 1 s.
$ ./sh/poc2.sh
% Total % Received % Xferd Average Speed Time Time Time
Current
Dload Upload Total Spent Left
Speed
100 1417 100 1171 100 246 881 185 0:00:01 0:00:01 ::
881
Call HTTP Ressources : {
Call HTTP Ressources : For an HTTP ressources total of 0.0 ms.
Call the database 7 times during 14 ms. each for a total of 113
ms.
CPU intensive compute 68ms.
{,
{
Call HTTP Ressources : For an HTTP ressources total of 0.0 ms.
Call the database 7 times during 14 ms. each for a total of 114
ms.
46. DEMO & Quizz : quel est le temps de
réponse de la même chaîne dans une
modélisation plus proche de la réalité ?
47. Implémentation de ce Quizz
Diokles : An Information System scale performance simulator
https://github.com/mbojoly/diokles
(https://github.com/mbojoly/diokles)
49. Temps de réponse : 3 s.
$ ./sh/poc2.sh
% Total % Received % Xferd Average Spee
d Time Time Time Current
Dload Upload Total Spent Left Spee
d
100 1417 100 1171 100 246 328
69 0:00:03 0:00:03 :: 328
Call HTTP Ressources : {
Call HTTP Ressources : For an HTTP ressourc
es total of 0.0 ms.
Call the database 7 times during 14 ms. eac
h for a total of 394 ms.
CPU intensive compute 69ms.
{,
{
Call HTTP Ressources : For an HTTP ressourc
es total of 0.0 ms.
Call the database 7 times during 14 ms. eac
51. Des problèmes "mineurs" peuvent devenir
critiques à l'échelle d'un SI
Latence
N+1 SQL requêtes
N+1 appels à des applications externes
Les tests "end-to-end" sont obligatoires car
certains résultats peuvent défier l'intuition
52. Boîte à outils pour les tests "end-to-end"
Disclaimer
Les tests end-to-end sont complexes. Ceci ne se veut pas une
méthode systémique mais un inventaire d'outils à
disposition, ainsi qu'un REX sur leur efficacité
53. Outil #1 : Analyse de la production existante
Analyse des latences entre systèmes
Identification du goulet d'étranglement
Découverte des problèmes de design
Évaluation de la capacité du système
54. Outil #1 : Analyse de la production existante
Exemple de l'évaluation de la capacité du système
55. Outil #1 : Analyse de la production existante
Exemple de l'évaluation de la capacité du système
56. Outil #1 : Analyse de la production existante
Exemple de l'évaluation de la capacité du système
57. Outil #1 : Analyse de la production existante
Exemple de l'évaluation de la capacité du système
58. Outil #1 : Analyse de la production existante
Exemple de l'évaluation de la capacité maximale du système
59. Outil #1 : attention aux chiffres !
Volume Temps de réponse moyen
1000 transactions 15s
2000 transactions 40s
64. Outil #3 : le pic de transactions
Exemple d'analyse
65. Outil #4 : "rejeu" d'une journée de
production
simplifiée bien sûr !
66. Outil #5 : mettre en production
Tout ce qui peut être mis en production par avance doit l'être
Pensez votre stratégie de migration pour monter en charge
progressivement
Inspirez-vous des "Géants du Web"
67. Take-away
Faites des tests, même imparfaits
Mesurez scientifiquement
Revenez-en à des problèmes simples
Extrapolez, en ayant conscience des limites
70. Sources
Tous les slides : icônes (c) OCTO Technology (2015)
:Autant attendre la mise en production Morguefile (http://www.morguefile.com/archive/display/940045)
: etVivre ses rêvess ginacn.blogspot.fr (http://ginacn.blogspot.fr/2006/05/petites-estrelles.html) Wikipedia
(https://en.wikipedia.org/wiki/Antoine_de_Saint-Exup%C3%A9ry)
:APM Outil Dynatrace (http://www.dynatrace.com/fr/index.html)
:Google Dapper Dapper, a Large-Scale Distributed Systems Tracing Infrastructure
(http://static.googleusercontent.com/media/research.google.com/fr//pubs/archive/36356.pdf)
:Bonnes pratiques Géants du Web, l'obsession de la mesure (http://www.octo.com/fr/publications/11-les-geants-du-web)
:Exemples de lois de poisson Wikipedia (https://fr.wikipedia.org/wiki/Loi_de_Poisson)
(https://fr.wikipedia.org/wiki/Loi_de_Poisson)
:(https://fr.wikipedia.org/wiki/Loi_de_Poisson)Cycle de diffusion de l'innovation Wikipedia
(https://fr.wikipedia.org/wiki/Everett_Rogers)
:Traffic sur Internet Libstat (http://www.libstat.com/pages/heure.htm)
:Tests end-to-end Youtube : Spectacular Domino Rally Stunt Screen Link 4:51 (https://www.youtube.com/watch?
v=7BVr6LaC_HQ)
:Tous les modèles sont faux certains sont utiles Morguefile (http://www.morguefile.com/archive/display/940045)