SlideShare une entreprise Scribd logo
1  sur  25
Retour d’expérience
Kompass
"J'ai migré mon SI intégralement en Java dans
Windows Azure et je me porte bien"

Xavier Roques, Architecte Kompass
Thomas Conté, Architecte Microsoft
@tomconte, tconte@microsoft.com

Architecture/Azure/Cloud
Donnez votre avis !
Depuis votre smartphone sur :
http://notes.mstechdays.fr
De nombreux lots à gagner toute les heures !!!
Claviers, souris et jeux Microsoft…
Merci de nous aider à améliorer les Techdays !

#mstechdays

Architecture/Azure/Cloud
Agenda
• Introduction
– Présentation de la société Kompass
– Présentation du projet
– Java sur Windows Azure

•
•
•
•

Architecture, choix techniques
Utilisation des services Windows Azure
Problématiques rencontrées
Conclusion

#mstechdays

Architecture/Azure/Cloud
INTRODUCTION

#mstechdays

Architecture/Azure/Cloud
KOMPASS

Connects business to business
Notre métier.
 Collecter des informations sur les entreprises.
 Enrichir et structurer ces informations.
 Mettre ces informations à la disposition du public,
sous la forme de données brutes ou de services.
Notre mission.
 Développer la connaissance sur les entreprise
mondiales.
 Faciliter leurs mises en relation.
Notre ambition.
 Etre l’encyclopédie des entreprises mondiales de
référence.
#mstechdays

Architecture/Azure/Cloud
Les points forts de KOMPASS
Notoriété
1947
Année de création de la marque KOMPASS
8/10
Indice de notoriété de la marque auprès des
journalistes économiques.

75%

Pourcentage des clients ayant choisis
KOMPASS en raison de sa notoriété

Base de données
5,2 millions

Nombre d’entreprises dans la base de
données France (dont 350 000 dans la base
Internationale à fin 2013)

3,6 millions

Nombre de dirigeants dans la base données
France

75%

Dimension
Internationale
70
Nombre de pays membres du réseau
KOMPASS

26
4,2 millions

Nombre de traduction du site kompass.com
Nombre d’entreprises dans la base de données
internationale de KOMPASS

Nomenclature
59 000

Nombre d’activités, de produits et de services
recensés dans la nomenclature KOMPASS

2

Nombre d’opérateurs de base de données sur
les entreprises proposant une classification
homogène sur les 5 continents : D&B et
KOMPASS

Pourcentage des clients ayant choisis
KOMPASS en raison de la richesse et de la
qualité de ses données.

#mstechdays

Architecture/Azure/Cloud
Projet de refonte Cloud
• Applications hébergées dans les datacenters
de son ancienne maison mère (Linux / Oracle
/ WebLogic).
• Gestion centralisée et automatisée des
machines
• Déploiement plus rapide et maîtrisé
• Adaptabilité
• Grille tarifaire plus lisible
#mstechdays
• Partenaire de choix
Architecture/Azure/Cloud
Microsoft + Java
“This initiative is all about bringing
Java to the masses in the cloud.
We will be providing a fully open
and unconstrained Java
environment – with open choice
of third-party stacks – for
developers and essential
applications deployed on Windows
Azure.”

En production
le 12 mars !

Scott Sellers, Azul Systems President and
CEO

•

Accord avec Oracle
–
–
–

#mstechdays

Machine Virtuelles
Oracle JDK
WebLogic

•

Partenariats Open Source
–
–
–
–

OpenJDK / Azul
VM Depot
Cloud Services avec Tomcat
Windows Azure plug-in for Eclipse with Java

Architecture/Azure/Cloud
Java sur Windows Azure

IaaS
•
•
•
•

#mstechdays

VMs Windows ou Linux
Oracle JDK v6 & v7
VMs préconfigurées
Oracle WebLogic, VM
Depot Java Image, ou
votre propre JVM

PaaS
• OpenJDK 64bit fourni
par Azul (Zulu)
• Ou partez d’une VM
standard
• Plugin Eclipse pour le
déploiement

Services
• SDK Windows Azure
pour Java: Blob,
Table, Queue,
Service Bus, SQL, etc.
• Outils en ligne de
command azure-cli

Architecture/Azure/Cloud
ARCHITECTURE ET CHOIX
TECHNIQUES

#mstechdays

Architecture/Azure/Cloud
Architecture Globale
#mstechdays

Architecture/Azure/Cloud
Apache + Tomcat / Hybris en mode PaaS
• La solution finalisée comporte deux Worker
Roles
– Un frontal Apache
– Un serveur e-commerce Hybris (à base de Tomcat)

• Packagés via AzureRunMe
– Un simple zip téléchargé et extrait au démarrage

• Mise à jour automatique de la configuration
Apache
– Ajouter/retirer les serveurs Tomcat dans le pool AJP
–
les IP dans
#mstechdays Tâche de fond qui récupère Architecture/Azure/Cloudle Blob Storage
Affinité de sessions Apache
• Apache est choisi pour des raisons de rapidité de mise
œuvre
– Nombreuses règles de réécritures « historiques » nécessaires pour
le référencement / SEO
– Compétences des équipes techniques

• A nécessité un peu de tuning pour bien fonctionner sur
Windows
– TIME_WAIT au minimum; nombre de ports
– Réglé dans un startup scripts

• Étude en cours de migration vers IIS / ARR (Application
Request Routing)
– Utilisation de l’utilitaire de conversion de règles mod_rewrite
#mstechdays

Architecture/Azure/Cloud
Plugin Windows Azure pour Eclipse
• Utilisé lors des premiers tests
pour packager rapidement un
Tomcat et tester Windows Azure
• Au moment du démarrage, le
plugin avait plusieurs limitations
– Obligation de packager tout le JRE dans le
package
– Pas de frontaux Web (Apache/IIS) séparés

• L’on décide rapidement de passer
sur la solution AzureRunMe pour
avoir plus de flexibilité
#mstechdays

Architecture/Azure/Cloud
Azure RunMe
• Solution Open Source maintenue par
two10degrees
– https://github.com/WindowsAzure-Contrib/AzureRunMe

• Boîte à outils de déploiement multifonction
– Scripts de démarrage
– Téléchargement et extraction automatique de packages depuis le
Blob Storage
– Mise à jour régulière de fichiers
– Configuration des diagnostics, des traces

• Solution .NET  il faut utiliser Visual Studio pour la
compiler et la déployer!
#mstechdays
Architecture/Azure/Cloud
UTILISATION DES SERVICES AZURE

#mstechdays

Architecture/Azure/Cloud
Orchestration via les Storage Queues
•

Orchestrer la mise à jour des
index Intuition et de la BDD
Hybris lorsque les données
sources sont mises à jour

•

S’appuie sur les Blobs et
Queues
– Blobs pour stocker les
fichiers intermédiaires
– Queues pour
communiquer entre les
différents composants

•

Plusieurs API sont utilisées
pour y accéder
– PowerShell
– Java

•

Utilisation des Tables pour
centraliser les logs
#mstechdays

Architecture/Azure/Cloud
#mstechdays

Architecture/Azure/Cloud
PROBLÉMATIQUES RENCONTRÉES

#mstechdays

Architecture/Azure/Cloud
Windows Azure SQL Database
• Performances de Windows Azure SQL
Database
– Tuning de la couche TCP (Keep-Alive)
– Suffisant pour interactif Web avec peu d’opérations batch

• Problématiques de Throttling
– A prendre en compte dès le départ de l’application
– Difficile lorsque la solution (Hybris) n’a pas été conçue pour
– Se déclenchent surtout sur les gros batchs d’import

• Windows Azure SQL Database Premium
– Amélioration nette des performances sur une instance P2

• Au final, migration sur VM SQL Server

#mstechdays

Architecture/Azure/Cloud
Performances I/O
• Les performances des disques attachés ont un
impact sur les composants gourmands en I/O (e.g.
Intuition)
– Maximum de 500 IOPS/disque

• Répartir les I/O sur plusieurs disques afin
d’améliorer les performances
– Utilisation de disques RAID « stripés »
– Jusqu’à 16 disques attachés sur les plus grosses instances

• Séparation des I/O sur plusieurs comptes de
stockages
– Pour de fortes charges d’I/O, l’on peut saturer les capacités du
compte de stockage
#mstechdays
Architecture/Azure/Cloud
– Regrouper les disque de chaque machine dans un compte dédié
Questions /
Réponses
#mstechdays

Architecture/Azure/Cloud
Digital is
business

Contenu connexe

Tendances

Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...
Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...
Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...
Microsoft Technet France
 
Techdays2014 mode offline et synchronisation avec windows phone et windows 8....
Techdays2014 mode offline et synchronisation avec windows phone et windows 8....Techdays2014 mode offline et synchronisation avec windows phone et windows 8....
Techdays2014 mode offline et synchronisation avec windows phone et windows 8....
Guillaume Brout
 

Tendances (20)

Bonnes pratiques de StorSimple v2 et interconnexion dans le cloud
Bonnes pratiques de StorSimple v2 et interconnexion dans le cloudBonnes pratiques de StorSimple v2 et interconnexion dans le cloud
Bonnes pratiques de StorSimple v2 et interconnexion dans le cloud
 
Visual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œil
Visual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œilVisual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œil
Visual Studio 2013 / SharePoint 2013 duo de choc de 2010 à 2013 en un clin d’œil
 
Pourquoi les coûts de Windows Azure seront toujours les plus bas
Pourquoi les coûts de Windows Azure seront toujours les plus basPourquoi les coûts de Windows Azure seront toujours les plus bas
Pourquoi les coûts de Windows Azure seront toujours les plus bas
 
Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...
Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...
Protéger vos données dans un contexte BYOD/Office 365 avec le nouveau service...
 
Comment publier vos applications Web avec Windows Server 2012 R2
Comment publier vos applications Web avec Windows Server 2012 R2 Comment publier vos applications Web avec Windows Server 2012 R2
Comment publier vos applications Web avec Windows Server 2012 R2
 
[AzureCamp 24 Juin 2014] Azure Media Services par Xavier Pouyat
[AzureCamp 24 Juin 2014] Azure Media Services par Xavier Pouyat[AzureCamp 24 Juin 2014] Azure Media Services par Xavier Pouyat
[AzureCamp 24 Juin 2014] Azure Media Services par Xavier Pouyat
 
Compatibilité applicative : Comment sécuriser et accélérer votre migration ve...
Compatibilité applicative : Comment sécuriser et accélérer votre migration ve...Compatibilité applicative : Comment sécuriser et accélérer votre migration ve...
Compatibilité applicative : Comment sécuriser et accélérer votre migration ve...
 
Office 365 pour l'Education - les enjeux en terme de sécurité
Office 365 pour l'Education  - les enjeux en terme de sécurité Office 365 pour l'Education  - les enjeux en terme de sécurité
Office 365 pour l'Education - les enjeux en terme de sécurité
 
Les dernières avancées html5 & css3 en action !
Les dernières avancées html5 & css3 en action !Les dernières avancées html5 & css3 en action !
Les dernières avancées html5 & css3 en action !
 
Mon Stockage a la Cloud Attitude
Mon Stockage a la Cloud Attitude Mon Stockage a la Cloud Attitude
Mon Stockage a la Cloud Attitude
 
Windows 10 et PowerShell v5
Windows 10 et PowerShell v5Windows 10 et PowerShell v5
Windows 10 et PowerShell v5
 
Office 365 pour l'Education : une classe virtuelle ?
Office 365 pour l'Education : une classe virtuelle ? Office 365 pour l'Education : une classe virtuelle ?
Office 365 pour l'Education : une classe virtuelle ?
 
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
 
Panorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans AzurePanorama des offres NoSQL disponibles dans Azure
Panorama des offres NoSQL disponibles dans Azure
 
Windows Phone déploiement en entreprise
Windows Phone déploiement en entrepriseWindows Phone déploiement en entreprise
Windows Phone déploiement en entreprise
 
Des exemples de scénario de mobilité en entreprise
Des exemples de scénario de mobilité en entrepriseDes exemples de scénario de mobilité en entreprise
Des exemples de scénario de mobilité en entreprise
 
Techdays2014 mode offline et synchronisation avec windows phone et windows 8....
Techdays2014 mode offline et synchronisation avec windows phone et windows 8....Techdays2014 mode offline et synchronisation avec windows phone et windows 8....
Techdays2014 mode offline et synchronisation avec windows phone et windows 8....
 
Pourquoi Azure a changé ma vie de développeur SharePoint
Pourquoi Azure a changé ma vie de développeur SharePointPourquoi Azure a changé ma vie de développeur SharePoint
Pourquoi Azure a changé ma vie de développeur SharePoint
 
Gestion de Windows 10 et des applications dans l'entreprise moderne
Gestion de Windows 10 et des applications dans l'entreprise moderneGestion de Windows 10 et des applications dans l'entreprise moderne
Gestion de Windows 10 et des applications dans l'entreprise moderne
 
Mise en place d'une usine logicielle avec TFS et Test Manager 2010
Mise en place d'une usine logicielle avec TFS et Test Manager 2010Mise en place d'une usine logicielle avec TFS et Test Manager 2010
Mise en place d'une usine logicielle avec TFS et Test Manager 2010
 

Similaire à "J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bien" retour d'expérience de Kompass

TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
Thomas Conté
 
Monter des environnements dev test efficaces avec Windows Azure
Monter des environnements dev test efficaces avec Windows AzureMonter des environnements dev test efficaces avec Windows Azure
Monter des environnements dev test efficaces avec Windows Azure
Microsoft Technet 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 Edifixio
Amazon Web Services
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1
Cellenza
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythme
Microsoft
 

Similaire à "J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bien" retour d'expérience de Kompass (20)

TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
 
Architecture Cloud Hybride
Architecture Cloud HybrideArchitecture Cloud Hybride
Architecture Cloud Hybride
 
Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1Au cœur du Framework .NET 4.5.1
Au cœur du Framework .NET 4.5.1
 
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
 
Monter des environnements dev test efficaces avec Windows Azure
Monter des environnements dev test efficaces avec Windows AzureMonter des environnements dev test efficaces avec Windows Azure
Monter des environnements dev test efficaces avec Windows Azure
 
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 in the Azure World
SQL in the Azure WorldSQL in the Azure World
SQL in the Azure World
 
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
 
TechDays 2014 : Cloud Azure – Services de données et bonnes pratiques
TechDays 2014 : Cloud Azure – Services de données et bonnes pratiquesTechDays 2014 : Cloud Azure – Services de données et bonnes pratiques
TechDays 2014 : Cloud Azure – Services de données et bonnes pratiques
 
Adopter le cloud avec microsoft
Adopter le cloud avec microsoftAdopter le cloud avec microsoft
Adopter le cloud avec microsoft
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1
 
Windows HPC server sur Windows Azure (100
Windows HPC server sur Windows Azure (100Windows HPC server sur Windows Azure (100
Windows HPC server sur Windows Azure (100
 
Armportal presentation
Armportal presentationArmportal presentation
Armportal presentation
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows Azure
 
Cloud Computing presentation
Cloud Computing presentationCloud Computing presentation
Cloud Computing presentation
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythme
 
Node.js dans Azure
Node.js dans AzureNode.js dans Azure
Node.js dans Azure
 
Azure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides KeynoteAzure Camp 9 Décembre 2014 - slides Keynote
Azure Camp 9 Décembre 2014 - slides Keynote
 
Cycle de vie d'un projet web agile avec TFS 2013, Azure VM et Monaco
Cycle de vie d'un projet web agile avec TFS 2013, Azure VM et MonacoCycle de vie d'un projet web agile avec TFS 2013, Azure VM et Monaco
Cycle de vie d'un projet web agile avec TFS 2013, Azure VM et Monaco
 

Plus de Microsoft

Plus de Microsoft (20)

Uwp + Xamarin : Du nouveau en terre du milieu
Uwp + Xamarin : Du nouveau en terre du milieuUwp + Xamarin : Du nouveau en terre du milieu
Uwp + Xamarin : Du nouveau en terre du milieu
 
La Blockchain pas à PaaS
La Blockchain pas à PaaSLa Blockchain pas à PaaS
La Blockchain pas à PaaS
 
Tester, Monitorer et Déployer son application mobile
Tester, Monitorer et Déployer son application mobileTester, Monitorer et Déployer son application mobile
Tester, Monitorer et Déployer son application mobile
 
Windows 10, un an après – Nouveautés & Démo
Windows 10, un an après – Nouveautés & Démo Windows 10, un an après – Nouveautés & Démo
Windows 10, un an après – Nouveautés & Démo
 
Prenez votre pied avec les bots et cognitive services.
Prenez votre pied avec les bots et cognitive services.Prenez votre pied avec les bots et cognitive services.
Prenez votre pied avec les bots et cognitive services.
 
Office 365 Dev PnP & PowerShell : exploitez enfin le potentiel de votre écosy...
Office 365 Dev PnP & PowerShell : exploitez enfin le potentiel de votre écosy...Office 365 Dev PnP & PowerShell : exploitez enfin le potentiel de votre écosy...
Office 365 Dev PnP & PowerShell : exploitez enfin le potentiel de votre écosy...
 
Créer un bot de A à Z
Créer un bot de A à ZCréer un bot de A à Z
Créer un bot de A à Z
 
Microsoft Composition, pierre angulaire de vos applications ?
Microsoft Composition, pierre angulaire de vos applications ?Microsoft Composition, pierre angulaire de vos applications ?
Microsoft Composition, pierre angulaire de vos applications ?
 
Les nouveautés SQL Server 2016
Les nouveautés SQL Server 2016Les nouveautés SQL Server 2016
Les nouveautés SQL Server 2016
 
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
 
Administration et supervision depuis le Cloud avec Azure Logs Analytics
Administration et supervision depuis le Cloud avec Azure Logs AnalyticsAdministration et supervision depuis le Cloud avec Azure Logs Analytics
Administration et supervision depuis le Cloud avec Azure Logs Analytics
 
Retour d'expérience de projets Azure IoT "large scale" (MicroServices, portag...
Retour d'expérience de projets Azure IoT "large scale" (MicroServices, portag...Retour d'expérience de projets Azure IoT "large scale" (MicroServices, portag...
Retour d'expérience de projets Azure IoT "large scale" (MicroServices, portag...
 
Plan de Reprise d'Activité avec Azure Site Recovery
Plan de Reprise d'Activité avec Azure Site RecoveryPlan de Reprise d'Activité avec Azure Site Recovery
Plan de Reprise d'Activité avec Azure Site Recovery
 
Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...
Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...
Modélisation, déploiement et gestion des infrastructures Cloud : outils et bo...
 
Transformation de la représentation : De la VR à la RA, aller & retour.
Transformation de la représentation : De la VR à la RA, aller & retour.Transformation de la représentation : De la VR à la RA, aller & retour.
Transformation de la représentation : De la VR à la RA, aller & retour.
 
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...
 
Introduction à ASP.NET Core
Introduction à ASP.NET CoreIntroduction à ASP.NET Core
Introduction à ASP.NET Core
 
Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?Open Source et Microsoft Azure, rêve ou réalité ?
Open Source et Microsoft Azure, rêve ou réalité ?
 
Comment développer sur la console Xbox One avec une application Universal Win...
Comment développer sur la console Xbox One avec une application Universal Win...Comment développer sur la console Xbox One avec une application Universal Win...
Comment développer sur la console Xbox One avec une application Universal Win...
 
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
 

"J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bien" retour d'expérience de Kompass

  • 1.
  • 2. Retour d’expérience Kompass "J'ai migré mon SI intégralement en Java dans Windows Azure et je me porte bien" Xavier Roques, Architecte Kompass Thomas Conté, Architecte Microsoft @tomconte, tconte@microsoft.com Architecture/Azure/Cloud
  • 3. Donnez votre avis ! Depuis votre smartphone sur : http://notes.mstechdays.fr De nombreux lots à gagner toute les heures !!! Claviers, souris et jeux Microsoft… Merci de nous aider à améliorer les Techdays ! #mstechdays Architecture/Azure/Cloud
  • 4. Agenda • Introduction – Présentation de la société Kompass – Présentation du projet – Java sur Windows Azure • • • • Architecture, choix techniques Utilisation des services Windows Azure Problématiques rencontrées Conclusion #mstechdays Architecture/Azure/Cloud
  • 6. KOMPASS Connects business to business Notre métier.  Collecter des informations sur les entreprises.  Enrichir et structurer ces informations.  Mettre ces informations à la disposition du public, sous la forme de données brutes ou de services. Notre mission.  Développer la connaissance sur les entreprise mondiales.  Faciliter leurs mises en relation. Notre ambition.  Etre l’encyclopédie des entreprises mondiales de référence. #mstechdays Architecture/Azure/Cloud
  • 7. Les points forts de KOMPASS Notoriété 1947 Année de création de la marque KOMPASS 8/10 Indice de notoriété de la marque auprès des journalistes économiques. 75% Pourcentage des clients ayant choisis KOMPASS en raison de sa notoriété Base de données 5,2 millions Nombre d’entreprises dans la base de données France (dont 350 000 dans la base Internationale à fin 2013) 3,6 millions Nombre de dirigeants dans la base données France 75% Dimension Internationale 70 Nombre de pays membres du réseau KOMPASS 26 4,2 millions Nombre de traduction du site kompass.com Nombre d’entreprises dans la base de données internationale de KOMPASS Nomenclature 59 000 Nombre d’activités, de produits et de services recensés dans la nomenclature KOMPASS 2 Nombre d’opérateurs de base de données sur les entreprises proposant une classification homogène sur les 5 continents : D&B et KOMPASS Pourcentage des clients ayant choisis KOMPASS en raison de la richesse et de la qualité de ses données. #mstechdays Architecture/Azure/Cloud
  • 8.
  • 9. Projet de refonte Cloud • Applications hébergées dans les datacenters de son ancienne maison mère (Linux / Oracle / WebLogic). • Gestion centralisée et automatisée des machines • Déploiement plus rapide et maîtrisé • Adaptabilité • Grille tarifaire plus lisible #mstechdays • Partenaire de choix Architecture/Azure/Cloud
  • 10. Microsoft + Java “This initiative is all about bringing Java to the masses in the cloud. We will be providing a fully open and unconstrained Java environment – with open choice of third-party stacks – for developers and essential applications deployed on Windows Azure.” En production le 12 mars ! Scott Sellers, Azul Systems President and CEO • Accord avec Oracle – – – #mstechdays Machine Virtuelles Oracle JDK WebLogic • Partenariats Open Source – – – – OpenJDK / Azul VM Depot Cloud Services avec Tomcat Windows Azure plug-in for Eclipse with Java Architecture/Azure/Cloud
  • 11. Java sur Windows Azure IaaS • • • • #mstechdays VMs Windows ou Linux Oracle JDK v6 & v7 VMs préconfigurées Oracle WebLogic, VM Depot Java Image, ou votre propre JVM PaaS • OpenJDK 64bit fourni par Azul (Zulu) • Ou partez d’une VM standard • Plugin Eclipse pour le déploiement Services • SDK Windows Azure pour Java: Blob, Table, Queue, Service Bus, SQL, etc. • Outils en ligne de command azure-cli Architecture/Azure/Cloud
  • 14. Apache + Tomcat / Hybris en mode PaaS • La solution finalisée comporte deux Worker Roles – Un frontal Apache – Un serveur e-commerce Hybris (à base de Tomcat) • Packagés via AzureRunMe – Un simple zip téléchargé et extrait au démarrage • Mise à jour automatique de la configuration Apache – Ajouter/retirer les serveurs Tomcat dans le pool AJP – les IP dans #mstechdays Tâche de fond qui récupère Architecture/Azure/Cloudle Blob Storage
  • 15. Affinité de sessions Apache • Apache est choisi pour des raisons de rapidité de mise œuvre – Nombreuses règles de réécritures « historiques » nécessaires pour le référencement / SEO – Compétences des équipes techniques • A nécessité un peu de tuning pour bien fonctionner sur Windows – TIME_WAIT au minimum; nombre de ports – Réglé dans un startup scripts • Étude en cours de migration vers IIS / ARR (Application Request Routing) – Utilisation de l’utilitaire de conversion de règles mod_rewrite #mstechdays Architecture/Azure/Cloud
  • 16. Plugin Windows Azure pour Eclipse • Utilisé lors des premiers tests pour packager rapidement un Tomcat et tester Windows Azure • Au moment du démarrage, le plugin avait plusieurs limitations – Obligation de packager tout le JRE dans le package – Pas de frontaux Web (Apache/IIS) séparés • L’on décide rapidement de passer sur la solution AzureRunMe pour avoir plus de flexibilité #mstechdays Architecture/Azure/Cloud
  • 17. Azure RunMe • Solution Open Source maintenue par two10degrees – https://github.com/WindowsAzure-Contrib/AzureRunMe • Boîte à outils de déploiement multifonction – Scripts de démarrage – Téléchargement et extraction automatique de packages depuis le Blob Storage – Mise à jour régulière de fichiers – Configuration des diagnostics, des traces • Solution .NET  il faut utiliser Visual Studio pour la compiler et la déployer! #mstechdays Architecture/Azure/Cloud
  • 18. UTILISATION DES SERVICES AZURE #mstechdays Architecture/Azure/Cloud
  • 19. Orchestration via les Storage Queues • Orchestrer la mise à jour des index Intuition et de la BDD Hybris lorsque les données sources sont mises à jour • S’appuie sur les Blobs et Queues – Blobs pour stocker les fichiers intermédiaires – Queues pour communiquer entre les différents composants • Plusieurs API sont utilisées pour y accéder – PowerShell – Java • Utilisation des Tables pour centraliser les logs #mstechdays Architecture/Azure/Cloud
  • 22. Windows Azure SQL Database • Performances de Windows Azure SQL Database – Tuning de la couche TCP (Keep-Alive) – Suffisant pour interactif Web avec peu d’opérations batch • Problématiques de Throttling – A prendre en compte dès le départ de l’application – Difficile lorsque la solution (Hybris) n’a pas été conçue pour – Se déclenchent surtout sur les gros batchs d’import • Windows Azure SQL Database Premium – Amélioration nette des performances sur une instance P2 • Au final, migration sur VM SQL Server #mstechdays Architecture/Azure/Cloud
  • 23. Performances I/O • Les performances des disques attachés ont un impact sur les composants gourmands en I/O (e.g. Intuition) – Maximum de 500 IOPS/disque • Répartir les I/O sur plusieurs disques afin d’améliorer les performances – Utilisation de disques RAID « stripés » – Jusqu’à 16 disques attachés sur les plus grosses instances • Séparation des I/O sur plusieurs comptes de stockages – Pour de fortes charges d’I/O, l’on peut saturer les capacités du compte de stockage #mstechdays Architecture/Azure/Cloud – Regrouper les disque de chaque machine dans un compte dédié