SlideShare ist ein Scribd-Unternehmen logo
1 von 36
29 Avril 2014, Paris, FranceLa Communauté Open Source Azure Française
PATTERNS CLOUD / AZURE
Marius Zaharia
Marius Zaharia
Expert Azure & Cloud
Twitter : @marius_on_azure
Blog : http://marius-zaharia.blogspot.com
LinkedIn : http://www.linkedin.com/in/mzaharia
Email : zaharia@outlook.com
Agenda
Problématiques type
Rubriques d’orientation et guidage
Patrons de conception
Récapitulatif
Références
PROBLEMATIQUES
ORIENTATION
Problématiques type
1. Disponibilité
2. Gestion des données
3. Conception et implémentation
4. Echange de messages
5. Gestion applicative et monitoring
6. Performance et évolutivité (scaling)
7. Résilience
8. Sécurité
Rubriques de orientation/guidage
a) Messagerie asynchrone
(Asynchronous Messaging)
b) Mise à l’échelle automatique
(Autoscaling)
c) Mise en cache
d) Consistance des données
e) Partitionnement des données
f) Réplication et synchronisation
des données
g) Instrumentation et télémétrie
h) Déploiement distribué
(multi-datacenter)
i) Service metering
PATRONS DE CONCEPTION CLOUD
Patron: CACHE-ASIDE (mise en cache à-côté)
A la demande, charge des données provenant
d’une structure de données et les garde
disponible pour utilisation.
Ce modèle peut améliorer les performances et
aide à maintenir la cohérence entre les données
contenues dans le cache et les données dans le
magasin de données sous-jacent.
Solution Azure :
AZURE CACHE (en preview)
Patron : CIRCUIT BREAKER (Disjoncteur)
Permet de gérer les erreurs qui
peuvent prendre une quantité
variable de temps pour les
rectifier, lors de la connexion à un
service distant ou à une
ressource.
Ce modèle peut améliorer la
stabilité et la résilience d’une
application.
Solution Azure: code custom
Patron: COMPENSATING TRANSACTION (Transaction compensée)
Permet annuler les actions effectuées par une série d'étapes qui, ensemble, définissent
une opération unitaire et consistante, si une ou plusieurs des étapes échoue.
Les opérations qui suivent le modèle de cohérence éventuelle sont généralement
trouvées dans les applications hébergé dans le cloud, qui mettent en œuvre des
processus et des flux de travail complexes.
Solution Azure: BizTalk Server (en mode IaaS)
Patron: COMPETING CONSUMERS (consommateurs concurrents)
Utilise plusieurs consommateurs simultanés pour traiter les messages reçus sur le même
canal de messagerie.
Ce modèle permet à un système de traiter plusieurs messages simultanément pour
optimiser le débit, pour améliorer l'évolutivité et de la disponibilité, et d'équilibrer la
charge de travail.
Solution Azure:
- STORAGE QUEUE ou
SERVICE BUS QUEUE;
- CLOUD SERVICES/
Worker Rôles
(comme consommateurs)
Patron: COMPUTE RESOURCE CONSOLIDATION
(consolidation des ressources de calcul)
Permet consolider les tâches ou
opérations multiples dans une unité de
calcul unique.
Ce modèle peut augmenter l'utilisation
des ressources de calcul et de réduire
les coûts et les frais de gestion associés
à la réalisation d'un traitement de
calcul dans les applications hébergées
dans le cloud.
Solution Azure:
- plusieurs web sites dans un Web Role
- plusieurs web sites dans un Web Site
- plusieurs services dans un Worker Role
Patron: CQRS - COMMAND & QUERY RESPONSIBILITY SEGREGATION
(séparation des responsabilités commande vs demande)
Séparer les opérations qui lisent les
données provenant de l'exploitation des
opérations de mise à jour de données, à
l'aide des interfaces distinctes.
Ce modèle peut optimiser les
performances, l'évolutivité et la sécurité;
soutenir l'évolution du système au fil du
temps grâce à une plus grande flexibilité,
et empêcher les commandes de mise à
jour de causer des conflits de fusion au
niveau du domaine.
Solution Azure: code custom
Patron: EVENT SOURCING (Matérialisation d’événements)
Utilisez une structure de données en mode ajout-
uniquement pour enregistrer la série complète
d'événements qui décrivent les mesures prises sur
les données dans un domaine, plutôt que de
stocker seulement l'état actuel, de sorte que le
magasin peut être utilisé pour matérialiser les
objets de domaine.
Ce modèle peut simplifier les tâches dans des
domaines complexes, améliorer les
performances, l'évolutivité et réactivité; assurer la
cohérence des données transactionnelles et
maintenir des pistes de vérification complètes et
l'historique qui peut permettre des actions de
compensation.
Solution Azure: code custom
Patron: EXTERNAL CONFIGURATION STORE
(structure de configuration externe)
Permet déplacer les informations de
configuration de l’intérieur du package
de déploiement de l'application à un
emplacement centralisé.
Ce modèle peut offrir des possibilités de
gestion et de contrôle des données de
configuration plus facile, et pour le
partage de données de configuration
entre les applications ou les instances
d'application.
Solution Azure: configuration
externalisée (au niveau portail) des Web
Sites, Cloud Services, …
Patron: FEDERATED IDENTITY (Identité fédérée)
Permet déléguer l'authentification à un
fournisseur d'identité externe.
Ce modèle peut simplifier le développement,
de réduire l'obligation pour l'administration de
l'utilisateur, et d'améliorer l'expérience utilisateur
de l'application.
Solution Azure: AZURE ACTIVE DIRECTORY /
ACCESS CONTROL SERVICES
Patron: GATEKEEPER (« garde-porte »)
Protège les applications et services à l'aide d'une instance de serveur dédiée qui agit
comme un intermédiaire entre les clients et l'application ou le service, valide et
assainit les demandes, et transfère des demandes et des données entre eux.
Ce modèle peut fournir une couche supplémentaire de sécurité et limiter la surface
d'attaque du système.
Service Azure: Pare-feu de CLOUD SERVICES, SQL DATABASE (restriction/ACL de
plages d’IP); code custom via web services (Cloud Services)
PATRON: HEALTH MONITORING ENDPOINT
(point de terminaison pour la surveillance de fonctionnement)
Mets en œuvre des contrôles
fonctionnels d'une application que
les outils externes peuvent accéder
par l'intermédiaire des points de
terminaison exposés à intervalles
réguliers.
Ce modèle peut aider à vérifier que
les applications et services
s’exécutent correctement.
Service Azure: Endpoints pour les
Web Sites, VMs
Patron: INDEX TABLE (Tableau indexé)
Créer des index sur les champs
dans les structures de données qui
sont souvent référencés par les
critères de requête.
Ce modèle peut améliorer les
performances des requêtes en
permettant aux applications de
récupérer plus rapidement les
données à partir d‘une base de
données.
Service Azure: SQL DATABASE,
AZURE STORAGE TABLE
Patron: LEADER ELECTION (Election du leader)
Permet coordonner les actions effectuées
par une collection d’instances
collaboratives de tâches dans une
application distribuée en élisant un cas
comme le leader qui assume la
responsabilité de la gestion des autres cas.
Ce modèle peut aider à s'assurer que les
tâches ne sont pas en conflit les uns avec
les autres, provoquer des conflits pour les
ressources partagées, ou interférer par
inadvertance avec le travail que d'autres
instances de tâche exécutent.
Service Azure: code custom
Patron: MATERIALIZED VIEW (vue matérialisée)
Générer des vues pré-peuplées
sur les données dans un ou
plusieurs magasins de données
lorsque les données sont
formatées d'une manière qui ne
favorise pas les opérations de
requête nécessaires.
Ce modèle peut aider à soutenir
l'interrogation efficace et
extraction de données, et
d'améliorer les performances des
applications.
Service Azure: vues SQL
DATABASE (custom)
Patron: PIPES AND FILTRERS (Tuyaux et filtres)
Décomposer une tâche qui
effectue un traitement complexe en
une série d'éléments discrets qui
peuvent être réutilisés.
Ce modèle peut améliorer les
performances, l'évolutivité et la
réutilisabilité en permettant
éléments de la tâche qui effectuent
le traitement à être déployés et mis
à l'échelle de façon indépendante.
Service Azure: BizTalk Services
Patron: PRIORITY QUEUE (file d’attente de priorité)
Permet prioriser les demandes
envoyées aux services afin que les
demandes avec une priorité plus
élevée sont reçues et traitées plus
rapidement que celles d'une priorité
inférieure.
Ce modèle est utile dans les
applications qui offrent différentes
garanties de niveau de service pour
différents types de client.
Service Azure: SERVICE BUS TOPICS
AND SUBSCRIPTIONS
Patron: QUEUE-BASED LOAD LEVELING
(nivellement de charge basée sur des files)
Utilisez une file d'attente qui agit comme un tampon entre une tâche et un service
qu'il invoque afin de lisser les charges intermittent lourds qui peuvent causer d'autres
le service à l'échec ou la tâche à expiration.
Ce modèle peut aider à minimiser l'impact des pics de la demande de la
disponibilité et de la réactivité à la fois pour la tâche et le service.
Service Azure: AZURE STORAGE QUEUE + WORKER ROLES
Patron: RETRY (ré-essai)
Permet à une application de gérer les échecs temporaires lors de la connexion à un
service ou une ressource réseau en toute transparence, afin de relancer l'opération
dans l'espoir que l'échec est transitoire.
Cette configuration permet d'améliorer la stabilité de l'application.
Service Azure: Entity Framework*; Enterprise Library*
Patron: RUNTIME RECONFIGURATION
(reconfiguration au moment de l’exécution)
Permet concevoir une application de sorte qu'elle peut être reconfiguré sans
nécessiter le redéploiement ou le redémarrage de l'application.
Cela permet de maintenir la disponibilité et de minimiser les temps d'arrêt.
Service Azure: configuration de Cloud Services, Web Sites, …
Patron: SCHEDULER AGENT SUPERVISOR
(planificateur-agent-superviseur)
Coordonne un ensemble d'actions à travers un
ensemble distribué de services et autres
ressources distantes, tenter de gérer de
manière transparente les défauts si l'une de ces
actions échouent, ou annuler les effets du
travail effectué si le système ne peut pas
récupérer d'une faute.
Ce modèle peut améliorer la résilience d'un
système distribué en lui permettant de
récupérer et recommencer actions qui
échouent à cause des exceptions transitoires,
les défauts de longue durée, et les échecs du
processus.
Service Azure: AZURE MANAGEMENT API
BizTalk Server (sur IaaS)
Patron: SHARDING (Fragmentation)
Diviser un magasin de données en un
ensemble de cloisons horizontales
éclatées.
Ce modèle peut améliorer
l'évolutivité (scalabilité) lors de
l'enregistrement et l'accès à de
grands volumes de données.
Service Azure: SQL DATABASE
FEDERATION
Patron: STATIC CONTENT HOSTING
(hébergement de contenu statique)
Déployer du contenu statique à un
service de stockage en nuage qui
peut livrer ceux-ci directement au
client.
Ce modèle peut réduire la nécessité
d'instances de calcul potentiellement
coûteux.
Service Azure: AZURE CDN
Patron: THROTTLING (Limitation de niveau)
Permet de contrôler la consommation
des ressources utilisées par une
instance d'une application, un
locataire particulier ou un service
entier.
Ce modèle peut permettre au système
de continuer à fonctionner et
respecter les contrats de niveau de
service, même si une augmentation
de la demande impose une charge
extrême sur les ressources.
Service Azure: Connexions à SQL
DATABASE
Patron: VALET KEY (Clé de sureté)
Utilisez un jeton ou une clé qui fournit aux
clients un accès direct restreint à une
ressource ou un service spécifique afin de
décharger des opérations de transfert de
données de code de l'application.
Ce modèle est particulièrement utile dans
les applications qui utilisent des systèmes ou
des files d'attente de stockage en cloud, et
peut réduire les coûts et maximiser
l'évolutivité et les performances.
Solution Azure: accès aux conteneurs/blobs
de AZURE STORAGE BLOB
Récapitulatf
Patterns étudiés:
1. Cache-aside
2. Circuit Breaker
3. Compensating Transaction
4. Competing Consumers
5. Compute Resource
Consolidation
6. Command and Query
Responsibility Segregation (CQRS)
7. Event Sourcing
8. External Configuration Store
9. Federated Identity
10.Gatekeeper
11.Health Endpoint Monitoring
12. Index Table
13.Leader Election
14.Materialized View
15.Pipes and Filters
16.Priority Queue
17.Queue-based Load Leveling
18.Retry Pattern
19.Runtime Reconfiguration
20.Scheduler Agent Supervisor
21.Sharding
22.Static Content Hosting
23.Throttling
24.Valet Key
Références, à suivre
Cloud Design Patterns (de P&P):
http://msdn.microsoft.com/en-us/library/dn568099.aspx
FailSafe: Building Scalable, Resilient Cloud Services
http://aka.ms/FailsafeCloud
Cloud Service Fundamentals in Windows Azure
http://aka.ms/csf
Cloud Architecture Patterns: Using Microsoft Azure – un très bon livre de Bill Wilder
Building Real-World Cloud Apps with Windows Azure :
http://www.asp.net/aspnet/overview/developing-apps-with-windows-azure/building-
real-world-cloud-apps-with-windows-azure/introduction
QUESTIONS ?
MERCI !

Weitere ähnliche Inhalte

Was ist angesagt?

Valtech - Sharepoint et le cloud Azure
Valtech - Sharepoint et le cloud AzureValtech - Sharepoint et le cloud Azure
Valtech - Sharepoint et le cloud AzureValtech
 
Sécuriser votre site web azure, c'est simple maintenant!
Sécuriser votre site web azure, c'est simple maintenant!Sécuriser votre site web azure, c'est simple maintenant!
Sécuriser votre site web azure, c'est simple maintenant!Chourouk HJAIEJ
 
Microsoft experiences 2016 azure stack de l'azure dans votre datacenter 1.0
Microsoft experiences 2016   azure stack  de l'azure dans votre datacenter 1.0Microsoft experiences 2016   azure stack  de l'azure dans votre datacenter 1.0
Microsoft experiences 2016 azure stack de l'azure dans votre datacenter 1.0Benoît SAUTIERE
 
Microsoft Azure : The cloud for modern business
Microsoft Azure : The cloud for modern businessMicrosoft Azure : The cloud for modern business
Microsoft Azure : The cloud for modern businessChourouk HJAIEJ
 
Gab paris 2015 automatisation
Gab paris 2015   automatisationGab paris 2015   automatisation
Gab paris 2015 automatisationAymeric Weinbach
 
Microsoft - Le Cloud OS et présentation de Windows Azure
Microsoft - Le Cloud OS et présentation de Windows AzureMicrosoft - Le Cloud OS et présentation de Windows Azure
Microsoft - Le Cloud OS et présentation de Windows AzureValtech
 
Azure Stack : de l'Azure dans votre Datacenter
Azure Stack : de l'Azure dans votre DatacenterAzure Stack : de l'Azure dans votre Datacenter
Azure Stack : de l'Azure dans votre DatacenterMicrosoft pour les PME
 
Cloud et Virtualisation
Cloud et VirtualisationCloud et Virtualisation
Cloud et VirtualisationMarc Jouve
 
Concevoir ses premiers objets connectés avec azure
Concevoir ses premiers objets connectés avec azureConcevoir ses premiers objets connectés avec azure
Concevoir ses premiers objets connectés avec azureAymeric Weinbach
 
MS Cloud Summit Paris 2017 - Azure Stack
MS Cloud Summit Paris 2017 - Azure StackMS Cloud Summit Paris 2017 - Azure Stack
MS Cloud Summit Paris 2017 - Azure StackBenoît SAUTIERE
 
Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Christophe Villeneuve
 
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...PimpMySharePoint
 
Implentation d'une solution Cloud IAAS
Implentation d'une solution Cloud IAASImplentation d'une solution Cloud IAAS
Implentation d'une solution Cloud IAASmohamed hadrich
 
Azure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursAzure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursMicrosoft
 
Cnam cours azure ze cloud intro et présentation generale 2016
Cnam cours azure ze cloud intro et présentation  generale 2016Cnam cours azure ze cloud intro et présentation  generale 2016
Cnam cours azure ze cloud intro et présentation generale 2016Aymeric Weinbach
 
Diapo présentation cloud
Diapo présentation cloudDiapo présentation cloud
Diapo présentation cloudRoatta Cyril
 
Session iot gwab 2014 paris
Session iot gwab 2014 parisSession iot gwab 2014 paris
Session iot gwab 2014 parisMarius Zaharia
 

Was ist angesagt? (20)

Valtech - Sharepoint et le cloud Azure
Valtech - Sharepoint et le cloud AzureValtech - Sharepoint et le cloud Azure
Valtech - Sharepoint et le cloud Azure
 
Sécuriser votre site web azure, c'est simple maintenant!
Sécuriser votre site web azure, c'est simple maintenant!Sécuriser votre site web azure, c'est simple maintenant!
Sécuriser votre site web azure, c'est simple maintenant!
 
Microsoft experiences 2016 azure stack de l'azure dans votre datacenter 1.0
Microsoft experiences 2016   azure stack  de l'azure dans votre datacenter 1.0Microsoft experiences 2016   azure stack  de l'azure dans votre datacenter 1.0
Microsoft experiences 2016 azure stack de l'azure dans votre datacenter 1.0
 
Microsoft Azure : The cloud for modern business
Microsoft Azure : The cloud for modern businessMicrosoft Azure : The cloud for modern business
Microsoft Azure : The cloud for modern business
 
Gab paris 2015 automatisation
Gab paris 2015   automatisationGab paris 2015   automatisation
Gab paris 2015 automatisation
 
Microsoft - Le Cloud OS et présentation de Windows Azure
Microsoft - Le Cloud OS et présentation de Windows AzureMicrosoft - Le Cloud OS et présentation de Windows Azure
Microsoft - Le Cloud OS et présentation de Windows Azure
 
Azure Stack : de l'Azure dans votre Datacenter
Azure Stack : de l'Azure dans votre DatacenterAzure Stack : de l'Azure dans votre Datacenter
Azure Stack : de l'Azure dans votre Datacenter
 
Cloud et Virtualisation
Cloud et VirtualisationCloud et Virtualisation
Cloud et Virtualisation
 
Concevoir ses premiers objets connectés avec azure
Concevoir ses premiers objets connectés avec azureConcevoir ses premiers objets connectés avec azure
Concevoir ses premiers objets connectés avec azure
 
MS Cloud Summit Paris 2017 - Azure Stack
MS Cloud Summit Paris 2017 - Azure StackMS Cloud Summit Paris 2017 - Azure Stack
MS Cloud Summit Paris 2017 - Azure Stack
 
Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?
 
Cloud presentation
Cloud  presentationCloud  presentation
Cloud presentation
 
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
Sauver votre argent, votre temps et vos cheveux avec Microsoft Azure - GUSPQ ...
 
Implentation d'une solution Cloud IAAS
Implentation d'une solution Cloud IAASImplentation d'une solution Cloud IAAS
Implentation d'une solution Cloud IAAS
 
Azure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursAzure Service Fabric pour les développeurs
Azure Service Fabric pour les développeurs
 
Aws vs azure
Aws vs azureAws vs azure
Aws vs azure
 
Cnam cours azure ze cloud intro et présentation generale 2016
Cnam cours azure ze cloud intro et présentation  generale 2016Cnam cours azure ze cloud intro et présentation  generale 2016
Cnam cours azure ze cloud intro et présentation generale 2016
 
Diapo présentation cloud
Diapo présentation cloudDiapo présentation cloud
Diapo présentation cloud
 
Session iot gwab 2014 paris
Session iot gwab 2014 parisSession iot gwab 2014 paris
Session iot gwab 2014 paris
 
Openstack proposition
Openstack propositionOpenstack proposition
Openstack proposition
 

Andere mochten auch

02 Hibernate Introduction
02 Hibernate Introduction02 Hibernate Introduction
02 Hibernate IntroductionRanjan Kumar
 
стажировка в брно
стажировка в брностажировка в брно
стажировка в брноViletika
 
Мкртумова И.В._Качество жизни пожилых людей
Мкртумова И.В._Качество жизни пожилых людейМкртумова И.В._Качество жизни пожилых людей
Мкртумова И.В._Качество жизни пожилых людейViletika
 
презентация крц родина ул.баумана 44
презентация крц родина ул.баумана 44презентация крц родина ул.баумана 44
презентация крц родина ул.баумана 44arenda-servis-kazan
 
Mind mapping para elaboração de treinamentos e
Mind mapping para elaboração de treinamentos eMind mapping para elaboração de treinamentos e
Mind mapping para elaboração de treinamentos eAlexandre Kawase
 
презентация абсалямова 36
презентация абсалямова 36презентация абсалямова 36
презентация абсалямова 36arenda-servis-kazan
 
Mujeres maltratadas
Mujeres maltratadasMujeres maltratadas
Mujeres maltratadasCris BPrado
 
His 115 uop course,his 115 uop materials,his 115 uop homework
His 115 uop course,his 115 uop materials,his 115 uop homeworkHis 115 uop course,his 115 uop materials,his 115 uop homework
His 115 uop course,his 115 uop materials,his 115 uop homeworkuniversity of phoenix
 
Stiglitz resume efficiency condition for public goods
Stiglitz  resume efficiency condition for public goodsStiglitz  resume efficiency condition for public goods
Stiglitz resume efficiency condition for public goodsRiika Sukmawaty
 
[XamarinDay] Pipeline DevOps sur un projet Xamarin
[XamarinDay] Pipeline DevOps sur un projet Xamarin[XamarinDay] Pipeline DevOps sur un projet Xamarin
[XamarinDay] Pipeline DevOps sur un projet XamarinCellenza
 
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017Marius Zaharia
 
RivasAlvarez-OrozcoSalinas.utilerias
RivasAlvarez-OrozcoSalinas.utileriasRivasAlvarez-OrozcoSalinas.utilerias
RivasAlvarez-OrozcoSalinas.utileriasCrystianRivas
 

Andere mochten auch (19)

02 Hibernate Introduction
02 Hibernate Introduction02 Hibernate Introduction
02 Hibernate Introduction
 
стажировка в брно
стажировка в брностажировка в брно
стажировка в брно
 
Мкртумова И.В._Качество жизни пожилых людей
Мкртумова И.В._Качество жизни пожилых людейМкртумова И.В._Качество жизни пожилых людей
Мкртумова И.В._Качество жизни пожилых людей
 
презентация крц родина ул.баумана 44
презентация крц родина ул.баумана 44презентация крц родина ул.баумана 44
презентация крц родина ул.баумана 44
 
Mind mapping para elaboração de treinamentos e
Mind mapping para elaboração de treinamentos eMind mapping para elaboração de treinamentos e
Mind mapping para elaboração de treinamentos e
 
Health Advocate Introduction
Health Advocate IntroductionHealth Advocate Introduction
Health Advocate Introduction
 
презентация абсалямова 36
презентация абсалямова 36презентация абсалямова 36
презентация абсалямова 36
 
Mujeres maltratadas
Mujeres maltratadasMujeres maltratadas
Mujeres maltratadas
 
His 115 uop course,his 115 uop materials,his 115 uop homework
His 115 uop course,his 115 uop materials,his 115 uop homeworkHis 115 uop course,his 115 uop materials,his 115 uop homework
His 115 uop course,his 115 uop materials,his 115 uop homework
 
Developing expert-students
Developing expert-studentsDeveloping expert-students
Developing expert-students
 
Agenda Bahia 2011
Agenda Bahia 2011Agenda Bahia 2011
Agenda Bahia 2011
 
Stiglitz resume efficiency condition for public goods
Stiglitz  resume efficiency condition for public goodsStiglitz  resume efficiency condition for public goods
Stiglitz resume efficiency condition for public goods
 
[XamarinDay] Pipeline DevOps sur un projet Xamarin
[XamarinDay] Pipeline DevOps sur un projet Xamarin[XamarinDay] Pipeline DevOps sur un projet Xamarin
[XamarinDay] Pipeline DevOps sur un projet Xamarin
 
d.Maps: Discussion 2 Ideate
d.Maps: Discussion 2 Ideated.Maps: Discussion 2 Ideate
d.Maps: Discussion 2 Ideate
 
ندوة الطريق إلى مخرجات أفضل
ندوة الطريق إلى مخرجات أفضل ندوة الطريق إلى مخرجات أفضل
ندوة الطريق إلى مخرجات أفضل
 
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017
 
RivasAlvarez-OrozcoSalinas.utilerias
RivasAlvarez-OrozcoSalinas.utileriasRivasAlvarez-OrozcoSalinas.utilerias
RivasAlvarez-OrozcoSalinas.utilerias
 
One 2 One Rollover
One 2 One RolloverOne 2 One Rollover
One 2 One Rollover
 
Soplo de graham steel
Soplo de graham steelSoplo de graham steel
Soplo de graham steel
 

Ähnlich wie la session Patterns azure cloud au Gwab 2014

exposer cloud sur le cloud computing et azure
exposer cloud sur le cloud computing et azureexposer cloud sur le cloud computing et azure
exposer cloud sur le cloud computing et azuregaetan FOKOM
 
Estelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 Paris
Estelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 ParisEstelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 Paris
Estelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 ParisAZUG FR
 
La Sécurité dans Azure
La Sécurité dans AzureLa Sécurité dans Azure
La Sécurité dans AzureEstelle Auberix
 
Sql azure performance et montee en charge (1)
Sql azure   performance et montee en charge (1)Sql azure   performance et montee en charge (1)
Sql azure performance et montee en charge (1)Aymeric Weinbach
 
[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle Auberix[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle AuberixCellenza
 
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
 
Sql saturday 323 paris 2014 azure migration iaas et paas
Sql saturday 323 paris 2014   azure migration iaas et paasSql saturday 323 paris 2014   azure migration iaas et paas
Sql saturday 323 paris 2014 azure migration iaas et paasChristophe Laporte
 
MS Days 2011 - Windows Azure
MS Days 2011 - Windows AzureMS Days 2011 - Windows Azure
MS Days 2011 - Windows AzureJason De Oliveira
 
DataStax Enterprise et Cas d'utilisation de Apache Cassandra
DataStax Enterprise et Cas d'utilisation de Apache CassandraDataStax Enterprise et Cas d'utilisation de Apache Cassandra
DataStax Enterprise et Cas d'utilisation de Apache CassandraVictor Coustenoble
 
Windows Azure et e-commerce
Windows Azure et e-commerceWindows Azure et e-commerce
Windows Azure et e-commerceMicrosoft
 
Integration Drupal systemes d'informations
Integration Drupal systemes d'informationsIntegration Drupal systemes d'informations
Integration Drupal systemes d'informationsneuros
 
Réussir sa migration vers le Cloud grâce à la virtualisation des données
Réussir sa migration vers le Cloud grâce à la virtualisation des donnéesRéussir sa migration vers le Cloud grâce à la virtualisation des données
Réussir sa migration vers le Cloud grâce à la virtualisation des donnéesDenodo
 
Patterns Windows Azure
Patterns Windows AzurePatterns Windows Azure
Patterns Windows AzureMicrosoft
 
[Tuto] Web burst : Débordement Web vers Windows Azure
[Tuto] Web burst : Débordement Web vers Windows Azure[Tuto] Web burst : Débordement Web vers Windows Azure
[Tuto] Web burst : Débordement Web vers Windows AzureMicrosoft Technet France
 
BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData, Inc.
 
SQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans AzureSQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans AzureGUSS
 
Reprise et Continuité d’activité sur le Cloud : Mythes & Réalités
Reprise et Continuité d’activité sur le Cloud : Mythes & RéalitésReprise et Continuité d’activité sur le Cloud : Mythes & Réalités
Reprise et Continuité d’activité sur le Cloud : Mythes & RéalitésMicrosoft Technet France
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDenodo
 

Ähnlich wie la session Patterns azure cloud au Gwab 2014 (20)

exposer cloud sur le cloud computing et azure
exposer cloud sur le cloud computing et azureexposer cloud sur le cloud computing et azure
exposer cloud sur le cloud computing et azure
 
Estelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 Paris
Estelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 ParisEstelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 Paris
Estelle Auberix - La securité dans Azure - Global Azure Bootcamp 2016 Paris
 
La Sécurité dans Azure
La Sécurité dans AzureLa Sécurité dans Azure
La Sécurité dans Azure
 
ShortUrlApp-iis-like
ShortUrlApp-iis-likeShortUrlApp-iis-like
ShortUrlApp-iis-like
 
Sql azure performance et montee en charge (1)
Sql azure   performance et montee en charge (1)Sql azure   performance et montee en charge (1)
Sql azure performance et montee en charge (1)
 
[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle Auberix[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle Auberix
 
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...
 
Sql saturday 323 paris 2014 azure migration iaas et paas
Sql saturday 323 paris 2014   azure migration iaas et paasSql saturday 323 paris 2014   azure migration iaas et paas
Sql saturday 323 paris 2014 azure migration iaas et paas
 
MS Days 2011 - Windows Azure
MS Days 2011 - Windows AzureMS Days 2011 - Windows Azure
MS Days 2011 - Windows Azure
 
DataStax Enterprise et Cas d'utilisation de Apache Cassandra
DataStax Enterprise et Cas d'utilisation de Apache CassandraDataStax Enterprise et Cas d'utilisation de Apache Cassandra
DataStax Enterprise et Cas d'utilisation de Apache Cassandra
 
Windows Azure et e-commerce
Windows Azure et e-commerceWindows Azure et e-commerce
Windows Azure et e-commerce
 
Integration Drupal systemes d'informations
Integration Drupal systemes d'informationsIntegration Drupal systemes d'informations
Integration Drupal systemes d'informations
 
Réussir sa migration vers le Cloud grâce à la virtualisation des données
Réussir sa migration vers le Cloud grâce à la virtualisation des donnéesRéussir sa migration vers le Cloud grâce à la virtualisation des données
Réussir sa migration vers le Cloud grâce à la virtualisation des données
 
Patterns Windows Azure
Patterns Windows AzurePatterns Windows Azure
Patterns Windows Azure
 
[Tuto] Web burst : Débordement Web vers Windows Azure
[Tuto] Web burst : Débordement Web vers Windows Azure[Tuto] Web burst : Débordement Web vers Windows Azure
[Tuto] Web burst : Débordement Web vers Windows Azure
 
BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)
 
SQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans AzureSQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
 
Reprise et Continuité d’activité sur le Cloud : Mythes & Réalités
Reprise et Continuité d’activité sur le Cloud : Mythes & RéalitésReprise et Continuité d’activité sur le Cloud : Mythes & Réalités
Reprise et Continuité d’activité sur le Cloud : Mythes & Réalités
 
Sql
SqlSql
Sql
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data Virtualization
 

Mehr von Aymeric Weinbach

Gab 2017 iot azure aymeric weinbach
Gab 2017 iot  azure aymeric weinbachGab 2017 iot  azure aymeric weinbach
Gab 2017 iot azure aymeric weinbachAymeric Weinbach
 
Cnam azure ze cloud resource manager
Cnam azure ze cloud  resource managerCnam azure ze cloud  resource manager
Cnam azure ze cloud resource managerAymeric Weinbach
 
Gab 2015 aymeric weinbach azure iot
Gab   2015 aymeric weinbach azure iot Gab   2015 aymeric weinbach azure iot
Gab 2015 aymeric weinbach azure iot Aymeric Weinbach
 
Cnam cours azure web sites
Cnam cours azure web sitesCnam cours azure web sites
Cnam cours azure web sitesAymeric Weinbach
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesAymeric Weinbach
 
Cnam cours azure cloud services
Cnam cours azure  cloud servicesCnam cours azure  cloud services
Cnam cours azure cloud servicesAymeric Weinbach
 
Windows azure gwab - mobile services
Windows azure   gwab - mobile servicesWindows azure   gwab - mobile services
Windows azure gwab - mobile servicesAymeric Weinbach
 
Gérer facilement les identités dans le cloud
Gérer facilement les identités dans le cloudGérer facilement les identités dans le cloud
Gérer facilement les identités dans le cloudAymeric Weinbach
 
Introduction gwab 2014 paris
Introduction gwab 2014 parisIntroduction gwab 2014 paris
Introduction gwab 2014 parisAymeric Weinbach
 
Cnam azure 2014 mobile services
Cnam azure 2014   mobile servicesCnam azure 2014   mobile services
Cnam azure 2014 mobile servicesAymeric Weinbach
 
Cnam azure 2014 web sites et integration continue
Cnam azure 2014  web sites et integration continueCnam azure 2014  web sites et integration continue
Cnam azure 2014 web sites et integration continueAymeric Weinbach
 
Windows azure mobile services deep dive
Windows azure mobile services deep diveWindows azure mobile services deep dive
Windows azure mobile services deep diveAymeric Weinbach
 

Mehr von Aymeric Weinbach (20)

Serverless everywhere
Serverless everywhereServerless everywhere
Serverless everywhere
 
Gaib19 azure + ia = art
Gaib19   azure + ia = artGaib19   azure + ia = art
Gaib19 azure + ia = art
 
Gab 2017 iot azure aymeric weinbach
Gab 2017 iot  azure aymeric weinbachGab 2017 iot  azure aymeric weinbach
Gab 2017 iot azure aymeric weinbach
 
Cnam azure ze cloud resource manager
Cnam azure ze cloud  resource managerCnam azure ze cloud  resource manager
Cnam azure ze cloud resource manager
 
Gab 2015 aymeric weinbach azure iot
Gab   2015 aymeric weinbach azure iot Gab   2015 aymeric weinbach azure iot
Gab 2015 aymeric weinbach azure iot
 
Cnam cours azure web sites
Cnam cours azure web sitesCnam cours azure web sites
Cnam cours azure web sites
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile services
 
Cnam cours azure iaas
Cnam cours azure iaasCnam cours azure iaas
Cnam cours azure iaas
 
Cnam cours azure cloud services
Cnam cours azure  cloud servicesCnam cours azure  cloud services
Cnam cours azure cloud services
 
Cnam azure 2015 storage
Cnam azure 2015  storageCnam azure 2015  storage
Cnam azure 2015 storage
 
Windows azure gwab - mobile services
Windows azure   gwab - mobile servicesWindows azure   gwab - mobile services
Windows azure gwab - mobile services
 
Gérer facilement les identités dans le cloud
Gérer facilement les identités dans le cloudGérer facilement les identités dans le cloud
Gérer facilement les identités dans le cloud
 
Gwab 2014 Paris keynote
Gwab 2014 Paris keynoteGwab 2014 Paris keynote
Gwab 2014 Paris keynote
 
Introduction gwab 2014 paris
Introduction gwab 2014 parisIntroduction gwab 2014 paris
Introduction gwab 2014 paris
 
Cnam azure 2014 storage
Cnam azure 2014   storageCnam azure 2014   storage
Cnam azure 2014 storage
 
Cnam azure 2014 mobile services
Cnam azure 2014   mobile servicesCnam azure 2014   mobile services
Cnam azure 2014 mobile services
 
Cnam azure 2014 iaas
Cnam azure 2014   iaas Cnam azure 2014   iaas
Cnam azure 2014 iaas
 
Cnam azure 2014 web sites et integration continue
Cnam azure 2014  web sites et integration continueCnam azure 2014  web sites et integration continue
Cnam azure 2014 web sites et integration continue
 
Windows azure mobile services deep dive
Windows azure mobile services deep diveWindows azure mobile services deep dive
Windows azure mobile services deep dive
 
Azure web sites
Azure web sitesAzure web sites
Azure web sites
 

la session Patterns azure cloud au Gwab 2014

  • 1. 29 Avril 2014, Paris, FranceLa Communauté Open Source Azure Française
  • 2. PATTERNS CLOUD / AZURE Marius Zaharia
  • 3. Marius Zaharia Expert Azure & Cloud Twitter : @marius_on_azure Blog : http://marius-zaharia.blogspot.com LinkedIn : http://www.linkedin.com/in/mzaharia Email : zaharia@outlook.com
  • 4. Agenda Problématiques type Rubriques d’orientation et guidage Patrons de conception Récapitulatif Références
  • 6. Problématiques type 1. Disponibilité 2. Gestion des données 3. Conception et implémentation 4. Echange de messages 5. Gestion applicative et monitoring 6. Performance et évolutivité (scaling) 7. Résilience 8. Sécurité
  • 7. Rubriques de orientation/guidage a) Messagerie asynchrone (Asynchronous Messaging) b) Mise à l’échelle automatique (Autoscaling) c) Mise en cache d) Consistance des données e) Partitionnement des données f) Réplication et synchronisation des données g) Instrumentation et télémétrie h) Déploiement distribué (multi-datacenter) i) Service metering
  • 9. Patron: CACHE-ASIDE (mise en cache à-côté) A la demande, charge des données provenant d’une structure de données et les garde disponible pour utilisation. Ce modèle peut améliorer les performances et aide à maintenir la cohérence entre les données contenues dans le cache et les données dans le magasin de données sous-jacent. Solution Azure : AZURE CACHE (en preview)
  • 10. Patron : CIRCUIT BREAKER (Disjoncteur) Permet de gérer les erreurs qui peuvent prendre une quantité variable de temps pour les rectifier, lors de la connexion à un service distant ou à une ressource. Ce modèle peut améliorer la stabilité et la résilience d’une application. Solution Azure: code custom
  • 11. Patron: COMPENSATING TRANSACTION (Transaction compensée) Permet annuler les actions effectuées par une série d'étapes qui, ensemble, définissent une opération unitaire et consistante, si une ou plusieurs des étapes échoue. Les opérations qui suivent le modèle de cohérence éventuelle sont généralement trouvées dans les applications hébergé dans le cloud, qui mettent en œuvre des processus et des flux de travail complexes. Solution Azure: BizTalk Server (en mode IaaS)
  • 12. Patron: COMPETING CONSUMERS (consommateurs concurrents) Utilise plusieurs consommateurs simultanés pour traiter les messages reçus sur le même canal de messagerie. Ce modèle permet à un système de traiter plusieurs messages simultanément pour optimiser le débit, pour améliorer l'évolutivité et de la disponibilité, et d'équilibrer la charge de travail. Solution Azure: - STORAGE QUEUE ou SERVICE BUS QUEUE; - CLOUD SERVICES/ Worker Rôles (comme consommateurs)
  • 13. Patron: COMPUTE RESOURCE CONSOLIDATION (consolidation des ressources de calcul) Permet consolider les tâches ou opérations multiples dans une unité de calcul unique. Ce modèle peut augmenter l'utilisation des ressources de calcul et de réduire les coûts et les frais de gestion associés à la réalisation d'un traitement de calcul dans les applications hébergées dans le cloud. Solution Azure: - plusieurs web sites dans un Web Role - plusieurs web sites dans un Web Site - plusieurs services dans un Worker Role
  • 14. Patron: CQRS - COMMAND & QUERY RESPONSIBILITY SEGREGATION (séparation des responsabilités commande vs demande) Séparer les opérations qui lisent les données provenant de l'exploitation des opérations de mise à jour de données, à l'aide des interfaces distinctes. Ce modèle peut optimiser les performances, l'évolutivité et la sécurité; soutenir l'évolution du système au fil du temps grâce à une plus grande flexibilité, et empêcher les commandes de mise à jour de causer des conflits de fusion au niveau du domaine. Solution Azure: code custom
  • 15. Patron: EVENT SOURCING (Matérialisation d’événements) Utilisez une structure de données en mode ajout- uniquement pour enregistrer la série complète d'événements qui décrivent les mesures prises sur les données dans un domaine, plutôt que de stocker seulement l'état actuel, de sorte que le magasin peut être utilisé pour matérialiser les objets de domaine. Ce modèle peut simplifier les tâches dans des domaines complexes, améliorer les performances, l'évolutivité et réactivité; assurer la cohérence des données transactionnelles et maintenir des pistes de vérification complètes et l'historique qui peut permettre des actions de compensation. Solution Azure: code custom
  • 16. Patron: EXTERNAL CONFIGURATION STORE (structure de configuration externe) Permet déplacer les informations de configuration de l’intérieur du package de déploiement de l'application à un emplacement centralisé. Ce modèle peut offrir des possibilités de gestion et de contrôle des données de configuration plus facile, et pour le partage de données de configuration entre les applications ou les instances d'application. Solution Azure: configuration externalisée (au niveau portail) des Web Sites, Cloud Services, …
  • 17. Patron: FEDERATED IDENTITY (Identité fédérée) Permet déléguer l'authentification à un fournisseur d'identité externe. Ce modèle peut simplifier le développement, de réduire l'obligation pour l'administration de l'utilisateur, et d'améliorer l'expérience utilisateur de l'application. Solution Azure: AZURE ACTIVE DIRECTORY / ACCESS CONTROL SERVICES
  • 18. Patron: GATEKEEPER (« garde-porte ») Protège les applications et services à l'aide d'une instance de serveur dédiée qui agit comme un intermédiaire entre les clients et l'application ou le service, valide et assainit les demandes, et transfère des demandes et des données entre eux. Ce modèle peut fournir une couche supplémentaire de sécurité et limiter la surface d'attaque du système. Service Azure: Pare-feu de CLOUD SERVICES, SQL DATABASE (restriction/ACL de plages d’IP); code custom via web services (Cloud Services)
  • 19. PATRON: HEALTH MONITORING ENDPOINT (point de terminaison pour la surveillance de fonctionnement) Mets en œuvre des contrôles fonctionnels d'une application que les outils externes peuvent accéder par l'intermédiaire des points de terminaison exposés à intervalles réguliers. Ce modèle peut aider à vérifier que les applications et services s’exécutent correctement. Service Azure: Endpoints pour les Web Sites, VMs
  • 20. Patron: INDEX TABLE (Tableau indexé) Créer des index sur les champs dans les structures de données qui sont souvent référencés par les critères de requête. Ce modèle peut améliorer les performances des requêtes en permettant aux applications de récupérer plus rapidement les données à partir d‘une base de données. Service Azure: SQL DATABASE, AZURE STORAGE TABLE
  • 21. Patron: LEADER ELECTION (Election du leader) Permet coordonner les actions effectuées par une collection d’instances collaboratives de tâches dans une application distribuée en élisant un cas comme le leader qui assume la responsabilité de la gestion des autres cas. Ce modèle peut aider à s'assurer que les tâches ne sont pas en conflit les uns avec les autres, provoquer des conflits pour les ressources partagées, ou interférer par inadvertance avec le travail que d'autres instances de tâche exécutent. Service Azure: code custom
  • 22. Patron: MATERIALIZED VIEW (vue matérialisée) Générer des vues pré-peuplées sur les données dans un ou plusieurs magasins de données lorsque les données sont formatées d'une manière qui ne favorise pas les opérations de requête nécessaires. Ce modèle peut aider à soutenir l'interrogation efficace et extraction de données, et d'améliorer les performances des applications. Service Azure: vues SQL DATABASE (custom)
  • 23. Patron: PIPES AND FILTRERS (Tuyaux et filtres) Décomposer une tâche qui effectue un traitement complexe en une série d'éléments discrets qui peuvent être réutilisés. Ce modèle peut améliorer les performances, l'évolutivité et la réutilisabilité en permettant éléments de la tâche qui effectuent le traitement à être déployés et mis à l'échelle de façon indépendante. Service Azure: BizTalk Services
  • 24. Patron: PRIORITY QUEUE (file d’attente de priorité) Permet prioriser les demandes envoyées aux services afin que les demandes avec une priorité plus élevée sont reçues et traitées plus rapidement que celles d'une priorité inférieure. Ce modèle est utile dans les applications qui offrent différentes garanties de niveau de service pour différents types de client. Service Azure: SERVICE BUS TOPICS AND SUBSCRIPTIONS
  • 25. Patron: QUEUE-BASED LOAD LEVELING (nivellement de charge basée sur des files) Utilisez une file d'attente qui agit comme un tampon entre une tâche et un service qu'il invoque afin de lisser les charges intermittent lourds qui peuvent causer d'autres le service à l'échec ou la tâche à expiration. Ce modèle peut aider à minimiser l'impact des pics de la demande de la disponibilité et de la réactivité à la fois pour la tâche et le service. Service Azure: AZURE STORAGE QUEUE + WORKER ROLES
  • 26. Patron: RETRY (ré-essai) Permet à une application de gérer les échecs temporaires lors de la connexion à un service ou une ressource réseau en toute transparence, afin de relancer l'opération dans l'espoir que l'échec est transitoire. Cette configuration permet d'améliorer la stabilité de l'application. Service Azure: Entity Framework*; Enterprise Library*
  • 27. Patron: RUNTIME RECONFIGURATION (reconfiguration au moment de l’exécution) Permet concevoir une application de sorte qu'elle peut être reconfiguré sans nécessiter le redéploiement ou le redémarrage de l'application. Cela permet de maintenir la disponibilité et de minimiser les temps d'arrêt. Service Azure: configuration de Cloud Services, Web Sites, …
  • 28. Patron: SCHEDULER AGENT SUPERVISOR (planificateur-agent-superviseur) Coordonne un ensemble d'actions à travers un ensemble distribué de services et autres ressources distantes, tenter de gérer de manière transparente les défauts si l'une de ces actions échouent, ou annuler les effets du travail effectué si le système ne peut pas récupérer d'une faute. Ce modèle peut améliorer la résilience d'un système distribué en lui permettant de récupérer et recommencer actions qui échouent à cause des exceptions transitoires, les défauts de longue durée, et les échecs du processus. Service Azure: AZURE MANAGEMENT API BizTalk Server (sur IaaS)
  • 29. Patron: SHARDING (Fragmentation) Diviser un magasin de données en un ensemble de cloisons horizontales éclatées. Ce modèle peut améliorer l'évolutivité (scalabilité) lors de l'enregistrement et l'accès à de grands volumes de données. Service Azure: SQL DATABASE FEDERATION
  • 30. Patron: STATIC CONTENT HOSTING (hébergement de contenu statique) Déployer du contenu statique à un service de stockage en nuage qui peut livrer ceux-ci directement au client. Ce modèle peut réduire la nécessité d'instances de calcul potentiellement coûteux. Service Azure: AZURE CDN
  • 31. Patron: THROTTLING (Limitation de niveau) Permet de contrôler la consommation des ressources utilisées par une instance d'une application, un locataire particulier ou un service entier. Ce modèle peut permettre au système de continuer à fonctionner et respecter les contrats de niveau de service, même si une augmentation de la demande impose une charge extrême sur les ressources. Service Azure: Connexions à SQL DATABASE
  • 32. Patron: VALET KEY (Clé de sureté) Utilisez un jeton ou une clé qui fournit aux clients un accès direct restreint à une ressource ou un service spécifique afin de décharger des opérations de transfert de données de code de l'application. Ce modèle est particulièrement utile dans les applications qui utilisent des systèmes ou des files d'attente de stockage en cloud, et peut réduire les coûts et maximiser l'évolutivité et les performances. Solution Azure: accès aux conteneurs/blobs de AZURE STORAGE BLOB
  • 33. Récapitulatf Patterns étudiés: 1. Cache-aside 2. Circuit Breaker 3. Compensating Transaction 4. Competing Consumers 5. Compute Resource Consolidation 6. Command and Query Responsibility Segregation (CQRS) 7. Event Sourcing 8. External Configuration Store 9. Federated Identity 10.Gatekeeper 11.Health Endpoint Monitoring 12. Index Table 13.Leader Election 14.Materialized View 15.Pipes and Filters 16.Priority Queue 17.Queue-based Load Leveling 18.Retry Pattern 19.Runtime Reconfiguration 20.Scheduler Agent Supervisor 21.Sharding 22.Static Content Hosting 23.Throttling 24.Valet Key
  • 34. Références, à suivre Cloud Design Patterns (de P&P): http://msdn.microsoft.com/en-us/library/dn568099.aspx FailSafe: Building Scalable, Resilient Cloud Services http://aka.ms/FailsafeCloud Cloud Service Fundamentals in Windows Azure http://aka.ms/csf Cloud Architecture Patterns: Using Microsoft Azure – un très bon livre de Bill Wilder Building Real-World Cloud Apps with Windows Azure : http://www.asp.net/aspnet/overview/developing-apps-with-windows-azure/building- real-world-cloud-apps-with-windows-azure/introduction