SlideShare une entreprise Scribd logo
1  sur  35
ARCHITECTURE
AZURE
PERFORMANTE
Histoire du
développement
d’une
application
haute
performance sur
azure
© Pyxis Technologies inc.
/studio
Expertise
Qualité
Respect
Agile Big Data custom
CQRS Desktop Event
Sourcing Microsoft .NET C#
Scrum Software
development Training
Web
noussommes
© Pyxis Technologies inc.
INTRODUCTION
© Pyxis Technologies inc.
Budget Limité
POURQUOI?
© Pyxis Technologies inc.
Budget Limité
Potentiel de
croissance
POURQUOI?
© Pyxis Technologies inc.
Budget Limité
Potentiel de
croissance
Base d’utilisateurs
international
POURQUOI?
© Pyxis Technologies inc.
Budget Limité
Potentiel de
croissance
Base d’utilisateurs
international
Coût / revenu
POURQUOI?
© Pyxis Technologies inc.
Budget Limité
Potentiel de
croissance
Base d’utilisateurs
international
Coût / revenu
Construit pour la
performance
POURQUOI?
© Pyxis Technologies inc.
HOSTING
© Pyxis Technologies inc.
Storage SQL, Document,
Archivage,
Système de fichier,
image de VM
SQL, Document,
image de VM
SQL, Document,
Processing Toutes plateformes Toutes plateformes Toutes plateformes
Service Bus Queue, Event
(SNS), Lamba
Queue, Topic, Event
Hub
Maison
Scalability Automatique Automatique Maison ou OS
Familiarité Faible Moyenne Faible
Self-service Portail intégré Portail intégré Manuel
HOSTING - COMPARAISON
© Pyxis Technologies inc.
RECHERCHE
AZURE SEARCH
SERVICE
© Pyxis Technologies inc.
Performance Excellente Excellente Excellente
Fonctionnalités Full text search Multi-indexing,
query language,
multi plateforme
Index mutlti-
dimension
Maturité Mature Mature Jeune
Scalabilité Inter-noeud Manuelle avec
(SOLR)
Auto
Familiarité Moyennement
familié
Très familié Peu
RECHERCHE - COMPARAISON
© Pyxis Technologies inc.
 Persistant
 Accès lent
 Distribution de
données pas toujours
facile
 Persistant (avec
redondance)
 Accès ultra rapide
 Distribution des
données by design
STORAGE - MEDIUM
© Pyxis Technologies inc.
STORAGE - FORMAT
Blob
• Donnée non-structurée
• Objets de grande taille
Table
• Donnée tabulaire (structure plane)
• Accès rapide
Document
• Structure hiérarchique
• Schéma variable
Donnée relationnelles
• Structure normalisée
• Utilisation d’index
© Pyxis Technologies inc.
CACHE
© Pyxis Technologies inc.
SERVICE BUS
© Pyxis Technologies inc.
FRONT END
© Pyxis Technologies inc.
Performance Moyenne pour comtenu statique Excellente
Fonctionnalités Dynamique, donc sans limite Server side, donc limité
Maturité Mature Mature
Scalabilité Infinie, client side Selon les instances de serveur
Familiarité Moyenne Bonne
FROND END - COMPARAISON
© Pyxis Technologies inc.
MAILING
© Pyxis Technologies inc.
Fonctionnalités Envoi de masse, suivi des
lectures, support de gabarits
Envoi individuels, suivi des
lectures, support de gabarits
Scalabilité Transparente Transparente
Template Built-in Built-in
Écosystème Librairie Nuget Librairie Nuget
Api Rest Rest, SMTP
MAILING - COMPARAISON
© Pyxis Technologies inc.
Déploiement (automatisé)
Test de performance dès le début
Test local, émulé in-proc, émulé
Azure
Minimiser le downtime
Séparation des updates et des
requêtes (CQRS)
A CONSIDÉRER
© Pyxis Technologies inc.
Commande Requête
Données
dénormalisée
Rapide
d’accès
Réplicable
Intégrité des
données
Exécution
lente
Règles
d’affaires
SANS COMPROMIS
© Pyxis Technologies inc.
Retarder les
décisions
Architecture
évolutive
Abstraction
des
dépendances
Système à
deux vitesses
ARCHITECTURE - INITIALE
© Pyxis Technologies inc.
ARCHITECTURE – APRÈS 3 SPRINTS
© Pyxis Technologies inc.
ARCHITECTURE - FINALE
© Pyxis Technologies inc.
Sélecteur de persistance
Blob
Table
Mémoire
Autre…
Contexte de persistance
Pas de requêtes complexe
Mise à jour en lot
IMPLÉMENTATION - PERSISTANCE
© Pyxis Technologies inc.
IMPLÉMENTATION - PERSITANCE
Persistance
Store Factory
Blob
Persistance
IPersistanceStore
File
Persistance
Table
Persistance
Memory
Persistance
IPersistanceStore
IPersistanceStore
IPersistanceStore
IPersistanceStore
IPersitanceStore
void Save<T>
T Get<T>
void Delete<T>
bool Any<T>
IEnumerable<T>
GetSome<T>
IEnumerable<T> Query<T>
IEnumerable<T> GetAll<T>
void Purge
© Pyxis Technologies inc.
Recherche en mémoire
Lucene
Search Api réutilisable
IMPLÉMENTATION - RECHERCHE
© Pyxis Technologies inc.
CRÉATION D’INDEX
Factory
Dialect
IndexerMapper
Data provider
Query Builder
Map between
Domain Object
And
Lucene
Handle search
index content
Build index
queries
Return POCO to
index
© Pyxis Technologies inc.
RECHERCHE
Service
Index
Searcher
Index
Manager
Query
Builder
Mapper
© Pyxis Technologies inc.
Une mise à jour en deux temps
Traitement des données
Rafraichir les sites web
Job
Fire & forget
Queue (Azure)
Événement
Publisher / Subscriber
Event (Azure)
IMPLÉMENTATION – JOB/MESSAGE
© Pyxis Technologies inc.
EXÉCUTION DE JOB
Request
Azure
Queue Worker
© Pyxis Technologies inc.
ÉVÉNEMENTS
Update
Azure
Event
Web Site
Web Site
Web Site
© Pyxis Technologies inc.
Indexation des pages
Angular vs MVC
Difficulté de tester
Différente configuration
Debugging
Local
Émulateur
Cloud
PROBLÈMES
© Pyxis Technologies inc.
Rappelez-vous
Penser la performance dès le
début ne coûte pas plus cher
Prévoir l’évolution et la flexibilité
Se découpler de l’implémentation
Questions?
35
LA FIN

Contenu connexe

Tendances

Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...Microsoft Technet France
 
Matthieu Bouilloux - NodeJS dans Azure - - Global Azure Bootcamp 2016 Paris
Matthieu Bouilloux - NodeJS dans Azure -  - Global Azure Bootcamp 2016 ParisMatthieu Bouilloux - NodeJS dans Azure -  - Global Azure Bootcamp 2016 Paris
Matthieu Bouilloux - NodeJS dans Azure - - Global Azure Bootcamp 2016 ParisAZUG FR
 
Monter en charge, tester et surveiller avec une application Windows Azure : l...
Monter en charge, tester et surveiller avec une application Windows Azure : l...Monter en charge, tester et surveiller avec une application Windows Azure : l...
Monter en charge, tester et surveiller avec une application Windows Azure : l...Microsoft Technet France
 
Les nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessLes nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessEudes Olivier ROBERT
 
Powershell Saturday - Azure at Scale with PowerShell
Powershell Saturday - Azure at Scale with PowerShellPowershell Saturday - Azure at Scale with PowerShell
Powershell Saturday - Azure at Scale with PowerShellBenoît SAUTIERE
 
Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...
Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...
Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...OVHcloud
 
AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...
AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...
AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...Amazon Web Services
 
DevCon 2 ; Infra as Code avec Azure
DevCon 2  ; Infra as Code avec AzureDevCon 2  ; Infra as Code avec Azure
DevCon 2 ; Infra as Code avec AzureMichel HUBERT
 
Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15
Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15
Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15Dig-IT
 
Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...
Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...
Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...AZUG FR
 
Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...
Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...
Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...AZUG FR
 
Kalistick MixIT dev@cloud
Kalistick MixIT dev@cloudKalistick MixIT dev@cloud
Kalistick MixIT dev@cloudkalistick
 
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 ParisMarius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 ParisAZUG FR
 
Alphorm.com Formation SOPHOS XG FIREWALL : Niveau Expert
Alphorm.com Formation SOPHOS XG FIREWALL : Niveau ExpertAlphorm.com Formation SOPHOS XG FIREWALL : Niveau Expert
Alphorm.com Formation SOPHOS XG FIREWALL : Niveau ExpertAlphorm
 
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Microsoft
 
Track 2- Atelier 4 - Architecturez pour de la haute disponibilité
Track 2- Atelier 4 - Architecturez pour de la haute disponibilitéTrack 2- Atelier 4 - Architecturez pour de la haute disponibilité
Track 2- Atelier 4 - Architecturez pour de la haute disponibilitéAmazon Web Services
 
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...Fujitsu France
 
Track 1 - Atelier 3 - Implémentation de cloud d'entreprise par Edifixio
Track 1 - Atelier 3 - Implémentation de cloud d'entreprise par EdifixioTrack 1 - Atelier 3 - Implémentation de cloud d'entreprise par Edifixio
Track 1 - Atelier 3 - Implémentation de cloud d'entreprise par EdifixioAmazon Web Services
 

Tendances (18)

Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
Architecture, bonnes pratiques et recettes pour la réussite de vos projets av...
 
Matthieu Bouilloux - NodeJS dans Azure - - Global Azure Bootcamp 2016 Paris
Matthieu Bouilloux - NodeJS dans Azure -  - Global Azure Bootcamp 2016 ParisMatthieu Bouilloux - NodeJS dans Azure -  - Global Azure Bootcamp 2016 Paris
Matthieu Bouilloux - NodeJS dans Azure - - Global Azure Bootcamp 2016 Paris
 
Monter en charge, tester et surveiller avec une application Windows Azure : l...
Monter en charge, tester et surveiller avec une application Windows Azure : l...Monter en charge, tester et surveiller avec une application Windows Azure : l...
Monter en charge, tester et surveiller avec une application Windows Azure : l...
 
Les nouvelles architectures Skype for Business
Les nouvelles architectures Skype for BusinessLes nouvelles architectures Skype for Business
Les nouvelles architectures Skype for Business
 
Powershell Saturday - Azure at Scale with PowerShell
Powershell Saturday - Azure at Scale with PowerShellPowershell Saturday - Azure at Scale with PowerShell
Powershell Saturday - Azure at Scale with PowerShell
 
Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...
Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...
Pilotage et gestion proactive de vos machines virtuelles dans le Hosted Priva...
 
AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...
AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...
AWS Summit Paris - Track 1 - Session 3 - Abordez la migration de vos applicat...
 
DevCon 2 ; Infra as Code avec Azure
DevCon 2  ; Infra as Code avec AzureDevCon 2  ; Infra as Code avec Azure
DevCon 2 ; Infra as Code avec Azure
 
Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15
Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15
Atelier Technique LAN Cisco NANTES Jeudi 2 Juillet 15
 
Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...
Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...
Manon Pernin - Déploiement automatisé d’un environnement dans Azure - Global ...
 
Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...
Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...
Maxime Rastello - La gestion des identités avec Azure - Global Azure Bootcamp...
 
Kalistick MixIT dev@cloud
Kalistick MixIT dev@cloudKalistick MixIT dev@cloud
Kalistick MixIT dev@cloud
 
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 ParisMarius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
Marius Zaharia - App Service plus fortement - Global Azure Bootcamp 2016 Paris
 
Alphorm.com Formation SOPHOS XG FIREWALL : Niveau Expert
Alphorm.com Formation SOPHOS XG FIREWALL : Niveau ExpertAlphorm.com Formation SOPHOS XG FIREWALL : Niveau Expert
Alphorm.com Formation SOPHOS XG FIREWALL : Niveau Expert
 
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
 
Track 2- Atelier 4 - Architecturez pour de la haute disponibilité
Track 2- Atelier 4 - Architecturez pour de la haute disponibilitéTrack 2- Atelier 4 - Architecturez pour de la haute disponibilité
Track 2- Atelier 4 - Architecturez pour de la haute disponibilité
 
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
Fujitsu IT Future 2013 : Diminution des coûts opérationnels et du temps de dé...
 
Track 1 - Atelier 3 - Implémentation de cloud d'entreprise par Edifixio
Track 1 - Atelier 3 - Implémentation de cloud d'entreprise par EdifixioTrack 1 - Atelier 3 - Implémentation de cloud d'entreprise par Edifixio
Track 1 - Atelier 3 - Implémentation de cloud d'entreprise par Edifixio
 

En vedette

Image scanning microscopy - future developments
Image scanning microscopy - future developmentsImage scanning microscopy - future developments
Image scanning microscopy - future developmentsDirk Hähnel
 
Materiales uso técnico
Materiales uso técnicoMateriales uso técnico
Materiales uso técnicoLaura SV
 
Promotional Industries Italia per iSmartPhoto
Promotional Industries Italia per iSmartPhotoPromotional Industries Italia per iSmartPhoto
Promotional Industries Italia per iSmartPhotoAxel Pfaender
 
Unit 1 exam review
Unit 1 exam reviewUnit 1 exam review
Unit 1 exam reviewYourTeachers
 
Over vijf jaar is het roer in de landbouw om
Over vijf jaar is het roer in de landbouw omOver vijf jaar is het roer in de landbouw om
Over vijf jaar is het roer in de landbouw omakkernaarbos
 
Voedsel van lokale en natuurlijke waarde
Voedsel van lokale en natuurlijke waardeVoedsel van lokale en natuurlijke waarde
Voedsel van lokale en natuurlijke waardeakkernaarbos
 
De voedselbossen van Park Lingezegen
De voedselbossen van Park LingezegenDe voedselbossen van Park Lingezegen
De voedselbossen van Park Lingezegenakkernaarbos
 
Permacultuur in de boerenpraktijk
Permacultuur in de boerenpraktijkPermacultuur in de boerenpraktijk
Permacultuur in de boerenpraktijkakkernaarbos
 
Comparatives and Superlatives
Comparatives and SuperlativesComparatives and Superlatives
Comparatives and SuperlativesYourTeachers
 
Menu principal.pptx
Menu principal.pptxMenu principal.pptx
Menu principal.pptxkarlita8480
 
Binder2
Binder2Binder2
Binder2solpg
 
Les poules de picorama
Les poules de picoramaLes poules de picorama
Les poules de picoramaassopicorama
 
L'amélioration des tests unitaires par le refactoring
L'amélioration des tests unitaires par le refactoringL'amélioration des tests unitaires par le refactoring
L'amélioration des tests unitaires par le refactoringMSDEVMTL
 

En vedette (20)

Pictures
PicturesPictures
Pictures
 
Image scanning microscopy - future developments
Image scanning microscopy - future developmentsImage scanning microscopy - future developments
Image scanning microscopy - future developments
 
Materiales uso técnico
Materiales uso técnicoMateriales uso técnico
Materiales uso técnico
 
Promotional Industries Italia per iSmartPhoto
Promotional Industries Italia per iSmartPhotoPromotional Industries Italia per iSmartPhoto
Promotional Industries Italia per iSmartPhoto
 
Unit 1 exam review
Unit 1 exam reviewUnit 1 exam review
Unit 1 exam review
 
Present simple
Present simplePresent simple
Present simple
 
Over vijf jaar is het roer in de landbouw om
Over vijf jaar is het roer in de landbouw omOver vijf jaar is het roer in de landbouw om
Over vijf jaar is het roer in de landbouw om
 
Voedsel van lokale en natuurlijke waarde
Voedsel van lokale en natuurlijke waardeVoedsel van lokale en natuurlijke waarde
Voedsel van lokale en natuurlijke waarde
 
De voedselbossen van Park Lingezegen
De voedselbossen van Park LingezegenDe voedselbossen van Park Lingezegen
De voedselbossen van Park Lingezegen
 
Permacultuur in de boerenpraktijk
Permacultuur in de boerenpraktijkPermacultuur in de boerenpraktijk
Permacultuur in de boerenpraktijk
 
Comparatives and Superlatives
Comparatives and SuperlativesComparatives and Superlatives
Comparatives and Superlatives
 
Assessment
AssessmentAssessment
Assessment
 
Menu principal.pptx
Menu principal.pptxMenu principal.pptx
Menu principal.pptx
 
SHB Catalogue 2017
SHB Catalogue 2017SHB Catalogue 2017
SHB Catalogue 2017
 
My love
My loveMy love
My love
 
Binder2
Binder2Binder2
Binder2
 
Les poules de picorama
Les poules de picoramaLes poules de picorama
Les poules de picorama
 
L'amélioration des tests unitaires par le refactoring
L'amélioration des tests unitaires par le refactoringL'amélioration des tests unitaires par le refactoring
L'amélioration des tests unitaires par le refactoring
 
Triathlon handi-valide Mouliets 2015
Triathlon handi-valide Mouliets 2015Triathlon handi-valide Mouliets 2015
Triathlon handi-valide Mouliets 2015
 
Guest ap
Guest apGuest ap
Guest ap
 

Similaire à Architecture azure performante

"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi..."J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...Microsoft
 
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...Amazon Web Services
 
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteGab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteAZUG FR
 
MS Project Virtuel: EPM Cloud 360
MS Project Virtuel: EPM Cloud 360MS Project Virtuel: EPM Cloud 360
MS Project Virtuel: EPM Cloud 360Groupe SIRIUS
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiAZUG FR
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiSamir Arezki ☁
 
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...AZUG FR
 
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...Marius Zaharia
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureJason De Oliveira
 
Filtrage WEB: SQUID ET SQUIDGARD
Filtrage WEB: SQUID ET SQUIDGARDFiltrage WEB: SQUID ET SQUIDGARD
Filtrage WEB: SQUID ET SQUIDGARDMohamet Lamine DIOP
 
TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...
TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...
TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...Patrick Guimonet
 
IBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle Rome
IBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle RomeIBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle Rome
IBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle RomeIBM Switzerland
 
XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...
XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...
XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...Publicis Sapient Engineering
 
Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013Microsoft Technet France
 
Architecture de réseau numérique de cisco – présentation du réseau intuitif
Architecture de réseau numérique de cisco – présentation du réseau intuitifArchitecture de réseau numérique de cisco – présentation du réseau intuitif
Architecture de réseau numérique de cisco – présentation du réseau intuitifCisco Canada
 
Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...
Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...
Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...Cisco Canada
 
Nouveaux scénarios de déploiement avec SCCM 2012 SP1
Nouveaux scénarios de déploiement avec SCCM 2012 SP1Nouveaux scénarios de déploiement avec SCCM 2012 SP1
Nouveaux scénarios de déploiement avec SCCM 2012 SP1Microsoft Technet France
 
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"OCTO Technology
 

Similaire à Architecture azure performante (20)

"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi..."J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bi...
 
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
 
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetiteGab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
Gab17 lyon-rex build dev ops sur une infra iaas-paas multisite-by-matthieupetite
 
MS Project Virtuel: EPM Cloud 360
MS Project Virtuel: EPM Cloud 360MS Project Virtuel: EPM Cloud 360
MS Project Virtuel: EPM Cloud 360
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
 
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows Azure
 
Filtrage WEB: SQUID ET SQUIDGARD
Filtrage WEB: SQUID ET SQUIDGARDFiltrage WEB: SQUID ET SQUIDGARD
Filtrage WEB: SQUID ET SQUIDGARD
 
CQRS + Event Sourcing
CQRS + Event SourcingCQRS + Event Sourcing
CQRS + Event Sourcing
 
TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...
TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...
TechDays 2011 - VIR302 virtualiser vos applications métiers critiques sous hy...
 
IBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle Rome
IBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle RomeIBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle Rome
IBM Technology Day 2013 IBM Smarter Computing Y. de Visme Salle Rome
 
XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...
XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...
XebiCon'17 : Migration d’une application web vers un Paas Openshift - Akram B...
 
Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013
 
Architecture de réseau numérique de cisco – présentation du réseau intuitif
Architecture de réseau numérique de cisco – présentation du réseau intuitifArchitecture de réseau numérique de cisco – présentation du réseau intuitif
Architecture de réseau numérique de cisco – présentation du réseau intuitif
 
Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...
Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...
Reseaux grande enterprise- Architecture de réseau numérique de cisco – pré...
 
Nouveaux scénarios de déploiement avec SCCM 2012 SP1
Nouveaux scénarios de déploiement avec SCCM 2012 SP1Nouveaux scénarios de déploiement avec SCCM 2012 SP1
Nouveaux scénarios de déploiement avec SCCM 2012 SP1
 
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
 
Les métiers du web
Les métiers du webLes métiers du web
Les métiers du web
 

Plus de MSDEVMTL

Intro grpc.net
Intro  grpc.netIntro  grpc.net
Intro grpc.netMSDEVMTL
 
Grpc and asp.net partie 2
Grpc and asp.net partie 2Grpc and asp.net partie 2
Grpc and asp.net partie 2MSDEVMTL
 
Property based testing
Property based testingProperty based testing
Property based testingMSDEVMTL
 
Improve cloud visibility and cost in Microsoft Azure
Improve cloud visibility and cost in Microsoft AzureImprove cloud visibility and cost in Microsoft Azure
Improve cloud visibility and cost in Microsoft AzureMSDEVMTL
 
Return on Ignite 2019: Azure, .NET, A.I. & Data
Return on Ignite 2019: Azure, .NET, A.I. & DataReturn on Ignite 2019: Azure, .NET, A.I. & Data
Return on Ignite 2019: Azure, .NET, A.I. & DataMSDEVMTL
 
C sharp 8.0 new features
C sharp 8.0 new featuresC sharp 8.0 new features
C sharp 8.0 new featuresMSDEVMTL
 
Asp.net core 3
Asp.net core 3Asp.net core 3
Asp.net core 3MSDEVMTL
 
MSDEVMTL Informations 2019
MSDEVMTL Informations 2019MSDEVMTL Informations 2019
MSDEVMTL Informations 2019MSDEVMTL
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcoreMSDEVMTL
 
Groupe Excel et Power BI - Rencontre du 25 septembre 2018
Groupe Excel et Power BI  - Rencontre du 25 septembre 2018Groupe Excel et Power BI  - Rencontre du 25 septembre 2018
Groupe Excel et Power BI - Rencontre du 25 septembre 2018MSDEVMTL
 
Api gateway
Api gatewayApi gateway
Api gatewayMSDEVMTL
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcoreMSDEVMTL
 
Stephane Lapointe: Governance in Azure, keep control of your environments
Stephane Lapointe: Governance in Azure, keep control of your environmentsStephane Lapointe: Governance in Azure, keep control of your environments
Stephane Lapointe: Governance in Azure, keep control of your environmentsMSDEVMTL
 
Eric Routhier: Garder le contrôle sur vos coûts Azure
Eric Routhier: Garder le contrôle sur vos coûts AzureEric Routhier: Garder le contrôle sur vos coûts Azure
Eric Routhier: Garder le contrôle sur vos coûts AzureMSDEVMTL
 
Data science presentation
Data science presentationData science presentation
Data science presentationMSDEVMTL
 
Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...
Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...
Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...MSDEVMTL
 
Open id connect, azure ad, angular 5, web api core
Open id connect, azure ad, angular 5, web api coreOpen id connect, azure ad, angular 5, web api core
Open id connect, azure ad, angular 5, web api coreMSDEVMTL
 
Yoann Clombe : Fail fast, iterate quickly with power bi and google analytics
Yoann Clombe : Fail fast, iterate quickly with power bi and google analyticsYoann Clombe : Fail fast, iterate quickly with power bi and google analytics
Yoann Clombe : Fail fast, iterate quickly with power bi and google analyticsMSDEVMTL
 
CAE: etude de cas - Rolling Average
CAE: etude de cas - Rolling AverageCAE: etude de cas - Rolling Average
CAE: etude de cas - Rolling AverageMSDEVMTL
 
CAE: etude de cas
CAE: etude de casCAE: etude de cas
CAE: etude de casMSDEVMTL
 

Plus de MSDEVMTL (20)

Intro grpc.net
Intro  grpc.netIntro  grpc.net
Intro grpc.net
 
Grpc and asp.net partie 2
Grpc and asp.net partie 2Grpc and asp.net partie 2
Grpc and asp.net partie 2
 
Property based testing
Property based testingProperty based testing
Property based testing
 
Improve cloud visibility and cost in Microsoft Azure
Improve cloud visibility and cost in Microsoft AzureImprove cloud visibility and cost in Microsoft Azure
Improve cloud visibility and cost in Microsoft Azure
 
Return on Ignite 2019: Azure, .NET, A.I. & Data
Return on Ignite 2019: Azure, .NET, A.I. & DataReturn on Ignite 2019: Azure, .NET, A.I. & Data
Return on Ignite 2019: Azure, .NET, A.I. & Data
 
C sharp 8.0 new features
C sharp 8.0 new featuresC sharp 8.0 new features
C sharp 8.0 new features
 
Asp.net core 3
Asp.net core 3Asp.net core 3
Asp.net core 3
 
MSDEVMTL Informations 2019
MSDEVMTL Informations 2019MSDEVMTL Informations 2019
MSDEVMTL Informations 2019
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcore
 
Groupe Excel et Power BI - Rencontre du 25 septembre 2018
Groupe Excel et Power BI  - Rencontre du 25 septembre 2018Groupe Excel et Power BI  - Rencontre du 25 septembre 2018
Groupe Excel et Power BI - Rencontre du 25 septembre 2018
 
Api gateway
Api gatewayApi gateway
Api gateway
 
Common features in webapi aspnetcore
Common features in webapi aspnetcoreCommon features in webapi aspnetcore
Common features in webapi aspnetcore
 
Stephane Lapointe: Governance in Azure, keep control of your environments
Stephane Lapointe: Governance in Azure, keep control of your environmentsStephane Lapointe: Governance in Azure, keep control of your environments
Stephane Lapointe: Governance in Azure, keep control of your environments
 
Eric Routhier: Garder le contrôle sur vos coûts Azure
Eric Routhier: Garder le contrôle sur vos coûts AzureEric Routhier: Garder le contrôle sur vos coûts Azure
Eric Routhier: Garder le contrôle sur vos coûts Azure
 
Data science presentation
Data science presentationData science presentation
Data science presentation
 
Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...
Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...
Michel Ouellette + Gabriel Lainesse: Process Automation & Data Analytics at S...
 
Open id connect, azure ad, angular 5, web api core
Open id connect, azure ad, angular 5, web api coreOpen id connect, azure ad, angular 5, web api core
Open id connect, azure ad, angular 5, web api core
 
Yoann Clombe : Fail fast, iterate quickly with power bi and google analytics
Yoann Clombe : Fail fast, iterate quickly with power bi and google analyticsYoann Clombe : Fail fast, iterate quickly with power bi and google analytics
Yoann Clombe : Fail fast, iterate quickly with power bi and google analytics
 
CAE: etude de cas - Rolling Average
CAE: etude de cas - Rolling AverageCAE: etude de cas - Rolling Average
CAE: etude de cas - Rolling Average
 
CAE: etude de cas
CAE: etude de casCAE: etude de cas
CAE: etude de cas
 

Architecture azure performante

  • 2. © Pyxis Technologies inc. /studio Expertise Qualité Respect Agile Big Data custom CQRS Desktop Event Sourcing Microsoft .NET C# Scrum Software development Training Web noussommes
  • 3. © Pyxis Technologies inc. INTRODUCTION
  • 4. © Pyxis Technologies inc. Budget Limité POURQUOI?
  • 5. © Pyxis Technologies inc. Budget Limité Potentiel de croissance POURQUOI?
  • 6. © Pyxis Technologies inc. Budget Limité Potentiel de croissance Base d’utilisateurs international POURQUOI?
  • 7. © Pyxis Technologies inc. Budget Limité Potentiel de croissance Base d’utilisateurs international Coût / revenu POURQUOI?
  • 8. © Pyxis Technologies inc. Budget Limité Potentiel de croissance Base d’utilisateurs international Coût / revenu Construit pour la performance POURQUOI?
  • 9. © Pyxis Technologies inc. HOSTING
  • 10. © Pyxis Technologies inc. Storage SQL, Document, Archivage, Système de fichier, image de VM SQL, Document, image de VM SQL, Document, Processing Toutes plateformes Toutes plateformes Toutes plateformes Service Bus Queue, Event (SNS), Lamba Queue, Topic, Event Hub Maison Scalability Automatique Automatique Maison ou OS Familiarité Faible Moyenne Faible Self-service Portail intégré Portail intégré Manuel HOSTING - COMPARAISON
  • 11. © Pyxis Technologies inc. RECHERCHE AZURE SEARCH SERVICE
  • 12. © Pyxis Technologies inc. Performance Excellente Excellente Excellente Fonctionnalités Full text search Multi-indexing, query language, multi plateforme Index mutlti- dimension Maturité Mature Mature Jeune Scalabilité Inter-noeud Manuelle avec (SOLR) Auto Familiarité Moyennement familié Très familié Peu RECHERCHE - COMPARAISON
  • 13. © Pyxis Technologies inc.  Persistant  Accès lent  Distribution de données pas toujours facile  Persistant (avec redondance)  Accès ultra rapide  Distribution des données by design STORAGE - MEDIUM
  • 14. © Pyxis Technologies inc. STORAGE - FORMAT Blob • Donnée non-structurée • Objets de grande taille Table • Donnée tabulaire (structure plane) • Accès rapide Document • Structure hiérarchique • Schéma variable Donnée relationnelles • Structure normalisée • Utilisation d’index
  • 15. © Pyxis Technologies inc. CACHE
  • 16. © Pyxis Technologies inc. SERVICE BUS
  • 17. © Pyxis Technologies inc. FRONT END
  • 18. © Pyxis Technologies inc. Performance Moyenne pour comtenu statique Excellente Fonctionnalités Dynamique, donc sans limite Server side, donc limité Maturité Mature Mature Scalabilité Infinie, client side Selon les instances de serveur Familiarité Moyenne Bonne FROND END - COMPARAISON
  • 19. © Pyxis Technologies inc. MAILING
  • 20. © Pyxis Technologies inc. Fonctionnalités Envoi de masse, suivi des lectures, support de gabarits Envoi individuels, suivi des lectures, support de gabarits Scalabilité Transparente Transparente Template Built-in Built-in Écosystème Librairie Nuget Librairie Nuget Api Rest Rest, SMTP MAILING - COMPARAISON
  • 21. © Pyxis Technologies inc. Déploiement (automatisé) Test de performance dès le début Test local, émulé in-proc, émulé Azure Minimiser le downtime Séparation des updates et des requêtes (CQRS) A CONSIDÉRER
  • 22. © Pyxis Technologies inc. Commande Requête Données dénormalisée Rapide d’accès Réplicable Intégrité des données Exécution lente Règles d’affaires SANS COMPROMIS
  • 23. © Pyxis Technologies inc. Retarder les décisions Architecture évolutive Abstraction des dépendances Système à deux vitesses ARCHITECTURE - INITIALE
  • 24. © Pyxis Technologies inc. ARCHITECTURE – APRÈS 3 SPRINTS
  • 25. © Pyxis Technologies inc. ARCHITECTURE - FINALE
  • 26. © Pyxis Technologies inc. Sélecteur de persistance Blob Table Mémoire Autre… Contexte de persistance Pas de requêtes complexe Mise à jour en lot IMPLÉMENTATION - PERSISTANCE
  • 27. © Pyxis Technologies inc. IMPLÉMENTATION - PERSITANCE Persistance Store Factory Blob Persistance IPersistanceStore File Persistance Table Persistance Memory Persistance IPersistanceStore IPersistanceStore IPersistanceStore IPersistanceStore IPersitanceStore void Save<T> T Get<T> void Delete<T> bool Any<T> IEnumerable<T> GetSome<T> IEnumerable<T> Query<T> IEnumerable<T> GetAll<T> void Purge
  • 28. © Pyxis Technologies inc. Recherche en mémoire Lucene Search Api réutilisable IMPLÉMENTATION - RECHERCHE
  • 29. © Pyxis Technologies inc. CRÉATION D’INDEX Factory Dialect IndexerMapper Data provider Query Builder Map between Domain Object And Lucene Handle search index content Build index queries Return POCO to index
  • 30. © Pyxis Technologies inc. RECHERCHE Service Index Searcher Index Manager Query Builder Mapper
  • 31. © Pyxis Technologies inc. Une mise à jour en deux temps Traitement des données Rafraichir les sites web Job Fire & forget Queue (Azure) Événement Publisher / Subscriber Event (Azure) IMPLÉMENTATION – JOB/MESSAGE
  • 32. © Pyxis Technologies inc. EXÉCUTION DE JOB Request Azure Queue Worker
  • 33. © Pyxis Technologies inc. ÉVÉNEMENTS Update Azure Event Web Site Web Site Web Site
  • 34. © Pyxis Technologies inc. Indexation des pages Angular vs MVC Difficulté de tester Différente configuration Debugging Local Émulateur Cloud PROBLÈMES
  • 35. © Pyxis Technologies inc. Rappelez-vous Penser la performance dès le début ne coûte pas plus cher Prévoir l’évolution et la flexibilité Se découpler de l’implémentation Questions? 35 LA FIN

Notes de l'éditeur

  1. Eric: présentation de Pyxis
  2. Eric: Présentation du projet
  3. Eric
  4. Eric
  5. Eric
  6. Eric
  7. Eric
  8. Eric
  9. Eric
  10. Eric
  11. Eric
  12. Eric
  13. Eric
  14. Eric
  15. Eric
  16. Eric
  17. Eric
  18. Eric
  19. Eric
  20. Eric
  21. Eric
  22. Eric: Concept Alain: Explication du diagramme
  23. Alain: Explication du diagramme
  24. Alain: Explication du diagramme
  25. Eric: Concept
  26. Eric: Concept
  27. Alain: explication technique
  28. Alain: Explication techique
  29. Eric: Concept
  30. Alain: Explication technique
  31. Alain: Explication technique
  32. Eric: Pose des question Alain: Explique
  33. Eric