Architecture azure performante

237 vues

Publié le

Architecture azure haute performance. Conférence du 21 Septembre 2015

Publié dans : Logiciels
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
237
Sur SlideShare
0
Issues des intégrations
0
Intégrations
10
Actions
Partages
0
Téléchargements
6
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • Eric: présentation de Pyxis
  • Eric: Présentation du projet
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric
  • Eric: Concept
    Alain: Explication du diagramme
  • Alain: Explication du diagramme
  • Alain: Explication du diagramme
  • Eric: Concept
  • Eric: Concept
  • Alain: explication technique
  • Alain: Explication techique
  • Eric: Concept
  • Alain: Explication technique
  • Alain: Explication technique
  • Eric: Pose des question
    Alain: Explique
  • Eric
  • Architecture azure performante

    1. 1. ARCHITECTURE AZURE PERFORMANTE Histoire du développement d’une application haute performance sur azure
    2. 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. 3. © Pyxis Technologies inc. INTRODUCTION
    4. 4. © Pyxis Technologies inc. Budget Limité POURQUOI?
    5. 5. © Pyxis Technologies inc. Budget Limité Potentiel de croissance POURQUOI?
    6. 6. © Pyxis Technologies inc. Budget Limité Potentiel de croissance Base d’utilisateurs international POURQUOI?
    7. 7. © Pyxis Technologies inc. Budget Limité Potentiel de croissance Base d’utilisateurs international Coût / revenu POURQUOI?
    8. 8. © Pyxis Technologies inc. Budget Limité Potentiel de croissance Base d’utilisateurs international Coût / revenu Construit pour la performance POURQUOI?
    9. 9. © Pyxis Technologies inc. HOSTING
    10. 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. 11. © Pyxis Technologies inc. RECHERCHE AZURE SEARCH SERVICE
    12. 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. 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. 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. 15. © Pyxis Technologies inc. CACHE
    16. 16. © Pyxis Technologies inc. SERVICE BUS
    17. 17. © Pyxis Technologies inc. FRONT END
    18. 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. 19. © Pyxis Technologies inc. MAILING
    20. 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. 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. 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. 23. © Pyxis Technologies inc. Retarder les décisions Architecture évolutive Abstraction des dépendances Système à deux vitesses ARCHITECTURE - INITIALE
    24. 24. © Pyxis Technologies inc. ARCHITECTURE – APRÈS 3 SPRINTS
    25. 25. © Pyxis Technologies inc. ARCHITECTURE - FINALE
    26. 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. 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. 28. © Pyxis Technologies inc. Recherche en mémoire Lucene Search Api réutilisable IMPLÉMENTATION - RECHERCHE
    29. 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. 30. © Pyxis Technologies inc. RECHERCHE Service Index Searcher Index Manager Query Builder Mapper
    31. 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. 32. © Pyxis Technologies inc. EXÉCUTION DE JOB Request Azure Queue Worker
    33. 33. © Pyxis Technologies inc. ÉVÉNEMENTS Update Azure Event Web Site Web Site Web Site
    34. 34. © Pyxis Technologies inc. Indexation des pages Angular vs MVC Difficulté de tester Différente configuration Debugging Local Émulateur Cloud PROBLÈMES
    35. 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

    ×