Architecture et Extensions d ArcGIS Server



Documents pareils
ArcGIS 10.1 for Server

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

ArcGIS Server / 9.4. Gaëtan LAVENU Jean-Marie DULISCOUET

JOnAS Day 5.1. Clustering

arcopole Studio Annexe 7 Architectures Site du programme arcopole :

Conférence SIG 2011 Versailles 5-6 Octobre 2011 Atelier Technique ArcGIS for Server en 10.1

Nouveautés ArcGIS 10.1 for Server

Mise en place d'un serveur d'application SIG au Conseil général de Seine-et-Marne

Guide d installation de ArcGIS server 9.3.1

Zabbix. Solution de supervision libre. par ALIXEN

Dynamic Computing Services solution de backup. White Paper Stefan Ruckstuhl


Développer avec les technologies ESRI. ESRI Developer Network (EDN) Gaëtan LAVENU ESRI France Jérémie MAJEROWICZ ESRI France

<Insert Picture Here> Solaris pour la base de donnés Oracle

ArcGIS Mobile 9.3. Cédric Pesty Gael Simon. Conférence SIG 2008 Ateliers Techniques. S'il vous plait! Merci d'éteindre vos appareils portables

«clustering» et «load balancing» avec Zope et ZEO

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

La haute disponibilité de la CHAINE DE

Environnements de Développement

Configuration et optimisation d'arcgis Server Gaëtan LAVENU ESRI France Sylvain BARD-MAÏER ESRI France

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

arcopole Studio Version 3.1

Infrastructure technique de géodonnées. Technische Geodateninfrastruktur. Cédric Moullet Forum e-geo.ch, 15. November 2013

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

Tests de montée en charge & Haute disponibilité

IaaS à la sauce Portails Focus sur. Pierre Aubert Orange Portails OF/DMGP/Portails/DOP 1 er Juillet 2013

ArcGIS 10 Christophe Tourret Gaëtan Lavenu

Urbanisme du Système d Information et EAI

Introduction au Déploiement

La continuité de service

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

Guide de Tarification. Introduction Licence FD Entreprise Forfaits clé en main SaaS SaaS Dédié SaaS Partagé. Page 2 Page 3 Page 4 Page 5 Page 8

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

Présentation technique. Architecture et Intégration. Organisation des équipes mobiles. Planification des interventions. Optimisation des plannings

Infrastructure Management

Sybase High Avalaibility

ArcGIS Server 9.3 Partie 2. Les API d'accès à ArcGIS Server. Thomas DAVID Gaëtan LAVENU

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui

Réseau - Sécurité - Métrologie - Data Center. Le leader du marché allemand des UTM débarque en France avec des arguments forts!

L art d ordonnancer. avec JobScheduler. François BAYART

Les outils actuels permettent-ils d automatiser la production de cartes? De quels outils dispose-t-on?

Glassfish dans le milieu médical. Sun Aquarium Paris 26 Juin 2009 Jacky Renno


Contenu de la version 3.4 C I V I L N E T A D M I N I S T R A T I O N

Master Informatique et Systèmes. Architecture des Systèmes d Information. 03 Architecture Logicielle et Technique

CAHIER DES CHARGES D'IMPLANTATION SIHAM

Contrôle d accès Centralisé Multi-sites

Compte Rendu d intégration d application

Architectures d implémentation de Click&DECiDE NSI

Le cloud computing au service des applications cartographiques à haute disponibilité

Sofrecom, filiale du Groupe France Telecom Orange - Intégrateur de solution SIG. Expériences et solutions SIG

PPE 2-1 Support Systeme. Partie Support Système

Architectures n-tiers Intergiciels à objets et services web

Entreprises Solutions

e-leasevision Votre solution de gestion complète de la LLD avec cotation en ligne intégrée

MISE EN ŒUVRE MOVEIT DMZ V1.8

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE

ossier rchitecture echnique

Séminaire Partenaires Esri France 7-8 juin Paris Les API ArcGIS pour les smartphones

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Le filtrage de niveau IP

Eléments d architecture technique Jalios JCMS 8.0

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Cloud Computing : Utiliser Stratos comme PaaS privé sur un cloud Eucalyptus

arcopole Studio Version 3.3

Configuration Matérielle et Logicielle AGORA V2

JASMINe. Outils de gestion et supervision d'infrastructure intergicielle.

Troisième concours d ingénieur des systèmes d information et de communication. «Session 2010»

Prise en compte des ressources dans les composants logiciels parallèles

Le stockage. 1. Architecture de stockage disponible. a. Stockage local ou centralisé. b. Différences entre les architectures

Séminaire Partenaires Esri France 7-8 juin Paris Cloud Computing Stratégie Esri

Chapitre 1 Windows Server

Architecture et infrastructure Web

Cahier des Charges d'implantation solution SIHAM

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1

CAHIER DES CLAUSES TECHNIQUES

La Continuité d Activité

Installation de Premium-RH

+ = OpenStack Presentation. Raphaël Ferreira - enovance. Credits : Thanks to the OpenStack Guys 1

Retour d expérience RATP. Intégrer le test de performance au cœur du processus de développement agile. Challenges, techniques, résultats.

Prestations de conseil en SRM (Storage Ressource Management)

Découvrez notre solution Alternative Citrix / TSE

Linux sécurité des réseaux

Mise en place d'une chaîne de production raster multi-échelles

Présentation d'un MOM open-source

Consolidation. Grid Infrastructure avec la 11gR2

Cours 6. Sécurisation d un SGBD. DBA - M1ASR - Université Evry 1

Offre Référentiel d échange

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

<Insert Picture Here>ApExposé. Cédric MYLLE 05 Février Exposé Système et Réseaux : ApEx, Application Express d Oracle

FORMATION CN01a CITRIX NETSCALER

MOBILITE. Datasheet version 3.0

Cluster High Availability. Holger Hennig, HA-Cluster Specialist

Urbanisation des Systèmes d'information

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Transcription:

Architecture et Extensions d ArcGIS Server

Plan de la présentation Présentation Générale ArcGIS Server Deconstructed Architecture et retours d expérience Execution (LoadBalancing // FailOver) Securité (DMZ, RP, etc etc) Dynamicité / Performance / Fonctionnalités Dimensionnements : Ordres de grandeur. Synthèse

ArcGIS Server - Deconstructed Définition Technique Ensemble de composants embarquant la technologie ArcGIS pour des problématiques Serveur «Reseau» «Client» ArcObjects

ArcGIS Server Hello World Pseudo Code Java import com.esri.arcgis.server.*; public void ConnectToGISServer(){ ServerInitializer si = new ServerInitializer(); si.initializeserver(mydomain,myuser,mypassword); ServerConnection serverconnection = new ServerConnection(); serverconnection.connect( ServeurAGS"); IServerObjectManager som = serverconnection.getserverobjectmanager(); IServerContext mapcontext = som.createservercontext("", ""); Try { Object legend = mapcontext.createobject( esricarto.legend ); } } finally { mapcontext.releasecontext(); }

Petit point sur cet Exemple COM Le Noyau d ArcGIS Server permet de travailler directement «à distance» avec les objets de la plateforme + autres objets COM. Qq points d attention sur le transport des paramètres / interfaces ArcGIS Server propose un Contexte d utilisation des objets (IServerContext) Méthodes supplémentaires pour : Associer des objets au context Serialiser/déserialiser en chaine de caractère (~base64) un ensemble d objet StateLess / StateFull Par extension : Chaque appel distant coute (environs 10ms) Synchronisation par le serveur -> sur un contexte les appels sont mis en file d attente. Couplage Fort -> le client dépend d un objet sur un serveur, pas de gestion de la défaillance par le middleware (DCOM)

ArcGIS Server - Deconstructed DCOM SOM «Client» DCOM Custom Custom Custom Context - SOC Context - SOC Context - SOC

Perfs?? Et aspects pratiques Des Miliers d objets disponibles, comment faire si l on doit en utiliser quelques milliers pour faire une opération?? Surtout si le coût d appel distant est très important Faire un objet «façade» de plus haut niveau à l intérieur du contexte, qui lui fait appel aux miliers d ArcObjects Coarse Grain Object Encore plus pratique ArcGIS Propose un objet Principal associé au contexte cartographique : Le ServerObject Cycle de vie calqué sur le contexte Peut être préconfiguré (MXD / Loc / Tbx ) getserverobject() Beaucoup de ServerObject existent déjà MapServer GeocodeServer GeodataServer.. Et la possibilité d en creer

ArcGIS Server - GISServer DCOM SOM «Client» DCOM SO SO SOE SOE SO Custom SOE Custom Context Custom - SOC Context - SOC Context - SOC GisServer

ArcGIS Server Decompiled Définition : Un Service est un patron de configuration d objets (ServerObject, ServerObjectExtension aka SOE) + politique d allocation de contexte Poolé / Non Poolé Poolé : aka StateLess Un «groupe / pool» de contexte est pré-éxécuté Le «createcontext» ne cree pas le contexte, mais récupére une référence déjà existante -> beaucoup plus rapide Non Poolé Chaque createcontext cree une nouvelle instance de service Isolation Threaded Chaque instance est un thread d un même processus Process Chaque SOC a son propre EXE

Server Object Extension Compagnon du ServerObject Suit le cycle de vie du ServerObject (creation / destruction / allocation de contexte / desallocation) Est inprocess au contexte -> l appel aux autres arcobjects est theoriquement 10 e 6 fois plus performant Connait le ServerObject (dans l initialisation, une référence est passée) Les + Complète les fonctionnalité d un ServerObject dans réimplementer les fonctions de base Facile à implémenter, généralement 2-3 interfaces de quelques méthodes Communication directe SOAP sur un SOE Implémentable en java depuis 9.3.1, en.net depuis la 9.2

Les Avancées d ArcGIS 10 sur les SOE Grande simplification de l implémentation de SOE Communicants Les SOE peuvent directement dialoguer en REST ou en SOAP Système de description des primitives permet de décrire les paramètres. Des Facilités pour la partie SOAP également La prise en compte des environnements managés (CLR / JVM) simplifie l utilisation, plus besoin d enregistrement dans la base de registre «Addins»

ArcGIS Server Big Picture HTTP /arcgis/services/monservice/mapserver/wmsserver /arcgis/services/monservice/mapserver /arcgis/rest/services Web Tier Interne AGS Web - ADF End Point OGC End Point SOAP End Point REST SOM DCOM Soap over DCOM SO SO SOE SO SOE SOE Custom Custom Context - SOC Context - SOC Custom Context - SOC GisServer

Plan de la présentation Présentation Générale ArcGIS Server Deconstructed Architecture et retours d expérience Exécution (LoadBalancing // FailOver) Sécurité (DMZ, RP, etc etc) Dynamicité / Performance / Fonctionnalités Dimensionnements : Ordres de grandeur. Synthèse

LoadBalancing - Standard Fichiers de paramétrage EndPoint Configuration Manager HTTP HTTP WebTier WebTier DCOM DCOM SOM SOM Context Context - SOC - SOC GISServer Context Context - SOC - SOC GISServer

LoadBalancing / FailOver / Maitrise de l exécution Elements délicats: DCOM / Fortement couplé Dépendance entre webtier AGS / GISServer Gestion des modes de défaillances HTTP HTTP -Faiblement couplé WebTier DCOM -Solutions Hardware / Software pour Loadbalancing / 1 er niveau de fail over -Traçage / Logs GISServer -Supervision Nous avons de très bons retours d expérience sur l utilisation d arcgis server en mode «Node»

Architecture de WebServices de Cartosphere Nœuds ArcGIS Server identiques Frontral Load balancing / 2 eme niveau de FailOver Gestion de la securité / consommation LB - Hardware HTTP Frontal - Orion Frontal - Orion Frontal - Orion WebTier GISServer DCOM WebTier GISServer DCOM WebTier GISServer DCOM SAN - Cluster

Plan de la présentation Présentation Générale ArcGIS Server Deconstructed Architecture et retours d expérience Exécution (LoadBalancing // FailOver) Sécurité (DMZ, RP, etc etc) Dynamicité / Performance / Fonctionnalités Dimensionnements : Ordres de grandeur. Synthèse

Sécurité Séparation réseau des éléments Dans le cadre d applications / fourniture de services, on préfère ne pas ouvrir ArcGIS Server sur l extérieur Fonctionnalités riches Souhait de maitriser l exécution Deux grandes contraintes dans la mise en place DCOM difficile à faire passer le FireWall -> lié au couplage fort Accès aux données gourmand en bande passante

Sécurité CAS 1 HTTP Internet FireWall Tomcat / IIS/ Application Web HTTP FireWall DMZ WebTier DCOM GISServer - Attention aux fonctionnalités (pas d accès DCOM vers AGS) -Sinon à partir d ArcGIS 9.3.1 / ArcGIS 10 -Voir les besoins directs de données de l application

Sécurité CAS 2 HTTP Internet FireWall Apache, HAProxy.. Reverse Proxy HTTP / AJP HTTP/AJP FireWall DMZ Application Web HTTP ou DCOM WebTier DCOM GISServer

Plan de la présentation Présentation Générale ArcGIS Server Deconstructed Architecture et retours d expérience Exécution (LoadBalancing // FailOver) Sécurité (DMZ, RP, etc etc) Dynamicité / Performance / Fonctionnalités Dimensionnements : Ordres de grandeur. Synthèse

Dynamicité / Performances / Fonctionnalités Riches Plusieurs «types» de services cartographiques avec ArcGIS Server Dynamiques (filtrages possibles dans la carte) MXD Accès Full ArcObjects à partir du ServerObject MSD Plus rapide mais pas d accès ArcObjects Des contraintes de symbologie / sources de données Cache (fixe, pas de filtrage) Ordres de grandeur Génération d une carte MXD 200 -> 700ms Génération d une carte en MSD ½ temps MXD Récupération d une tuile 10 ms

Dynamicité / Performances / Fonctionnalités Riches Une Bonne utilisation des types de services Superposition dans le client (bonne pratiques <= 3) Cache + Service Dynamique pour les données métier On peut combiner aussi dans le cadre d un développement les deux modes de fonctionnement

Dynamicité / Performances / Fonctionnalités Riches Exemple de réalisation : Application Extranet à large audience pour un assureur Pas mal de couches compliquées -> zones issues de l imagerie Fonctionnalité : Choix de combinaisons d affichage des couches Beaucoup de cas standard dans la combinaison des couches à afficher Pas de mise à jour des données au «fil de l eau» Application Web Http Accès FileSystem WebTier GISServer DCOM Cache «dynamique» /cache/0_1_4_5/l01/r000001/c000001.png

Dynamicité / Performances / Fonctionnalités Riches Exemple de réalisation 2 : Application Riche WebADF Ajout de données personnalisées Problématique de Contextes dédiés à un utilisateur de l application Http SOAP Proxy SOAP Application Web ADF WebTier MSD Poolé / Cachés GISServer Contexte dédié

Dynamicité / Performances / Fonctionnalités Riches Exemple de réalisation 3 : Application de GeoAnalyse Changement de thématiques à la volée Choix des indicateurs joints à la volée Application Flex Http REST Web Tiers applicatif WebTier SO SOE Custom DS Context GISServer - SOC InfoCentre

Plan de la présentation Présentation Générale ArcGIS Server Deconstructed Architecture et retours d expérience Exécution (LoadBalancing // FailOver) Sécurité (DMZ, RP, etc etc) Dynamicité / Performance / Fonctionnalités Dimensionnements : Ordres de grandeur. Synthèse

Dimensionnement Une application utilisant ArcGIS Server est parfois délicate à dimensionner (multiplicité des types de services, des cas d utilisation ) Des outils disponibles : Dimensionnement Théorique Capacity Planning (Ordre de grandeur sur le réseau / mémoire / CPU) White Paper Design System and Strategies Dimensionnement Pratique pour le passage à l échelle Connaitre les fonctionnalités, les cas d utilisation, avoir l application Scripter + tests en charge

Exemples de dimensionnements Application 1 : Cartographie WebADF, recherche de prestataires (NetworkAnalyst) et calcul d itinéraires 1500 utilisateurs connectés: Serveurs totalisant 64 cœurs. (Avec site de secours identique) Application 2 : Cartographie WebADF, gestion de tournées. Affichage d isochrones 300 utilisateurs connectés: 2 serveurs 4 cœurs pour AGS, 10 serveurs 2 cœurs pour le tier Web. LoadBalancing matériel en amont des serveurs Web, et en accès AGS Application 3 : Cartographie Flex, Arcopole, 50 utilisateurs intranet, XX utilisateurs grand public : 1 serveur 4 cœurs. Limitation des accès simultanés à partir d internet.

Exemples de dimensionnements Application 4 : Cartographie thématique dynamique 150 utilisateurs : 3 serveurs (anciens) 2 cœurs pour AGS, 1 serveur pour le WebTier Application 5 : WebADF, réseaux de chauffage 100 utilisateurs : 3 serveurs 2 cœurs pour AGS en VM, 1 serveur pour le WebTier.

Exemples de dimensionnements Dans TOUT les cas: Le dimensionnement théorique donne un ordre de grandeur correct. La mise en place au plus tôt de tests de montées en charge permet : De corriger / modifier : L architecture :» Mise en place de caches applicatifs (Cf exemple d application)» Transfert de code du tier Web vers des SOE Les données : Simplification, utilisation de bases «caches» plus performantes. Le code de l application (Utilisation d interfaces plus adaptées)

Exemples de dimensionnements Ces tests sont mis en place par: Ecriture d un logiciel exécutant un scénario Enregistrement / exécution d un scénario (LoadRunner/Jmeter/ ) Ils ont pour objectif: D arriver à saturation des ressources de la plateforme de test. Utilisateurs Temps réponse CPU Transaction/sec 5 utilisateurs 1 secondes 36% 6 10 3 secondes 85% 10 15 6 secondes 95% 11 20 10 secondes 99% 8 D obtenir le débit (Transaction/unité de temps) maximal sans excéder le temps de réponse exigé. D en déduire le dimensionnement de la plateforme complète

Conclusion (1) Possibilités d extension avec ArcGIS Server Coté GIS Server Cœur des fonctionnalités Objets instanciés dans le SOC ServerObject ServerObject Extension (SOE) Custom DataSource / Custom Layers / Custom Renderers. Coté Tiers Web DCOM (en fonction des besoins / contraintes) API REST / SOAP Custom à Coté de celle d ArcGIS Server Beaucoup de framework permettant cela facilement Peut utiliser l API SOAP / REST DCOM pour l implémentation Frontal Web devant ArcGIS Server pour utiliser au mieux la plateforme, et gérer les problematiques de Sécurité / Execution / Dynamicité

Conclusion (2) Possibilités d extension avec ArcGIS Server ArcGIS Server est une formidable source de fonctionnalités, «Boite à Services» Regardez les fonctionnalités demandées dans des applications Certaines sont couteuses en ressources / performances Beaucoup de solution pour avoir le service rendu Prendre les problématiques d infrastructure en amont assure une bonne maitrise.