53
SIG 2013. Atelier technique. Atelier Technique SIG 2013 Conférence Francophone 2 & 3 Octobre | Versailles ArcGIS for Server : Trucs, astuces et bonnes pratiques Alain Ravazy Jean-Marie Duliscouët

SIG 2013 Conférence Francophone · -Très bon outil pour mesurer les performances d'affichage d'une ... •Si superposition avec les basemaps Esri, ... Jmeter -Définir un

Embed Size (px)

Citation preview

SIG 2013. Atelier technique.

Atelier Technique

SIG 2013 – Conférence Francophone 2 & 3 Octobre | Versailles

ArcGIS for Server : Trucs,

astuces et bonnes pratiques

Alain Ravazy

Jean-Marie Duliscouët

SIG 2013. Atelier technique.

Agenda

• Objectifs de la présentation

• Les caractéristiques d’un service performant

• Le travail sur les données

• Le travail sur la carte : bonnes pratiques avant publication

• La création de cache (les atouts de la 10.2)

• Les outils d’analyse

• La gestion de site ArcGIS for Server

• Le webadaptor

• Analyse de performances des services

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Objectifs de la

présentation Des trucs et astuces pour quel

usage ?

SIG 2013. Atelier technique.

Parlons plutôt de bonnes pratiques …

• Recettes pour publier des services performants avec

ArcGIS Server

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Comment définir qu’un service

est performant

Service performant

SIG 2013. Atelier technique.

Qu’est un Service performant ?

• Comment caractériser un service performant ?

- Carte de 1000 objets en moins de 2 secondes Carte et Données

- Conserve ses performances en pic de charge Site et

caractéristiques du service

• Garder à l’esprit:

« Diviser par 2 les temps d’affichage d’un service permet de servir 2

fois plus de clients avec la même configuration »

• ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Le travail sur les

données

SIG 2013. Atelier technique.

Les données = carburant du service

• Mode de stockage?

- GeoDatabase Fichier ou GeoDatabase Entreprise

- FGDB plus rapide mais EGDB plus efficace sur les index complexes et accès

concurrents

- Chemin local ou UNC

- UNC 20% plus lent

ArcGIS Server : trucs et astuces

0

20000

40000

60000

80000

100000

120000

FGDB_Local FGDB_UNC SHP_Local SHP_UNC

Th

rou

gh

pu

t (T

r/H

r)

Data Source Location

High Complexity Map Service: Local vs. UNC (1 SOC)

SIG 2013. Atelier technique.

Les données = carburant du service

• Composition et préparation des données

- Pas de jeu de classe d’entité sauf nécessaire

- Limiter le nombre de sommets affichés: DICE

- Utiliser les Vues spatiales – 10.2: Dictionnaire SGBDR uniquement

• Circuit d’alimentation du moteur

- Utiliser le Direct Connect

• Maintenance

- Compress réguliers

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Les bonnes pratiques avant la

publication

Le travail sur la

carte

SIG 2013. Atelier technique.

Pourquoi optimiser la carte ?

• La publication directe d’une carte n’est pas recommandée

o Cartographie riche et complexe

o Système de coordonnées multiples

o Propriétés des couches à revoir (visibilité, étiquetage…)

ArcGIS Server : trucs et astuces

Il faut adapter la carte à un usage en mode web :

• Temps d’attente le plus court possible

• Fluidité lors de la navigation dans la carte

• Accès rapide aux ressources SIG

SIG 2013. Atelier technique.

SIG 2013. Atelier technique.

LES EFFETS DE L’OPTIMISATION…

une publication efficace

oSimplification de la symbologie

oHarmonisation des systèmes de coordonnées

oMeilleure gestion des labels

oOrganisation des couches

oTravail sur la géométrie

o…

ArcGIS Server : trucs et astuces

1 mxd peut être décliné en plusieurs mxd

thématiques avec des logiques de publication

différentes (raster, couches statiques,

couches dynamiques…)

SIG 2013. Atelier technique.

Les bonnes pratiques avant publication

- MxdPerfStat (téléchargement gratuit) est compatible avec la version

9.3, 9.3.1, 10 et 10.1 d’ArcGIS.

- Très bon outil pour mesurer les performances d'affichage d'une

carte en mode bureautique.

- Il établit des statistiques pour chaque couche (temps

d'affichage, nombre de sommets, projection etc.) et pour chaque

échelle testée > recommandations.

Diagnostiquer la carte pour évaluer les performances :

un outil « MxdPerfStat »

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

MxdPerfStats : fichier résultat

Couche 1

Couche 2

Temps d’accès à la donnée

Temps d’affichage de la donnée

Temps d’exécution du filtre spatial

Interprétation :

2 couches sont visibles à toutes les

échelles et entrainent des pertes de

performances aux grandes et moyennes

échelles :

Il faudra ajuster la visibilité des

couches en fonction des échelles et

optimiser celles-ci.

Fichier de style personnalisable

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Traitement géométrique des données

• Selon le diagnostic « MxdPerfStat »

• Privilégier la performance d’affichage.

• S’assurer que les opérations de simplification ne dégradent

pas « trop » l’interprétation cartographique !

• Exemples de traitements géométriques :

- simplification (simplify line, simplify polygon),

- fusion des entités (dissolve),

- limiter le nombre d’entités affichées à 1000,

- changement de géométrie à petite échelle.

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Visibilité des couches

• Utiliser à bon escient les échelles d’affichage.

• Si superposition avec les basemaps Esri, utiliser les

échelles ArcGIS online pour définir les plages de visibilité.

• Filtrer les couches pour n’afficher que ce qui

est utile pour une échelle donnée.

• Limiter le nombre de couches visibles à

l’ouverture de la carte

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Simplification de la symbologie

• Nécessaire pour les services de cartes opérationnels.

• Dans le cas ou la richesse de la symbologie doit être conservée :

service de carte mis en cache (temps de création plus long !)

1. Utiliser les symboles optimisés d’Esri

(ESRI_optimized) : environ 60% + rapides

1. Privilégier les styles simples, les fichiers .emf

2. Réduire le nombre de niveaux par symbole

éviter le mélange de types de symboles (symbole carto et

ligne à barbules…)

ou créer des symboles TrueType

ArcGIS Server : trucs et astuces

Envisagez d'utiliser des symboles du style ESRI_Optimized. Ce style contient des symboles ligne et de remplissage destinés à optimiser les performances tout en conservant un aspect visuel proche de leurs équivalents dans le style ESRI. Les symboles ligne et de remplissage du style ESRI_Optimized s'affichent près de 60% plus vite que les symboles du style ESRI.

Style linéaire Style ponctuel Style

Les symboles linéaires du style ESRI_Optimized utilisent moins de couches et des largeurs réduites en vue d'améliorer les performances.

L’utilisation de symboles ponctuels simples et des symboles ponctuels de type caractère à une couche constituent le meilleur moyen de symboliser des jeux de données d'entités ponctuelles volumineux.

Afin d'optimiser la vitesse de dessin, utilisez, chaque fois que cela est possible, des symboles ligne simples pour les contours des polygones.

Pour les symboles de remplissage par image, les images .emf se dessinent plus vite que les images .bmp.

SIG 2013. Atelier technique.

• Représentation impossible :

–Quantifier par catégorie

• Symboles non pris en charge :

–Symboles 3D (ponctuels, linéaires) et remplissage par

texture

• Propriétés des symboles :

–Privilégier la taille des symboles inférieure à

60 points

A savoir, lors de la publication

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Comparatifs : symboles ponctuels

Temps d’affichage d’une couche (shapefile) de 26.500 entités

ponctuelles, selon le type de symbole (en secondes).

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Comparatifs : symboles linéaires

Temps d’affichage d’une couche (shapefile) de 106.500 entités

linéaires, selon le type de symbole (en secondes).

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Comparatifs : symboles surfaciques

Temps d’affichage d’une couche (shapefile) de 75.000 entités

surfaciques, selon le type de symbole (en secondes).

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Ce qu’il faut éviter

• Les masques (hallo autour des symboles)

- utiliser des symboles images (emf)

- utiliser l’outil de masquage (AG advanced)

• La transparence des couches

- utiliser la transparence de couleurs

• Les options de décalage (propriétés de symboles).

• Les symboles images de type BMP

• Les classifications basées sur des champs joints

- utiliser des vues ou sauver la jointure (nouvelle couche)

• Les représentations (sauf pour la mise en cache)

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Etiquettes et annotations

• Définir des plages de visibilité pour les étiquettes.

• Eviter les effets sur les étiquettes

• Convertir en annotations :

- Lorsque les étiquettes ralentissent l’affichage de la carte,

malgré les optimisations vues précédemment.

- Lorsque de nombreuse étiquettes s’affichent à de petites

échelles.

- Pour réduire les temps de création du cache (et éviter les

doublons des labels)

- Si recommandation MxdPerfStat.

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Système de coordonnées

Choix d’un système de coordonnées géographiques

commun : éviter les projections à la volée

- Le changement de projection est coûteux

- Le changement de datum est encore plus coûteux !

Contrôler le système de projection de chaque couche :

- projection de la couche = projection de la carte (dataframe).

Contrôler le système de coordonnées des services de

carte d’une webmap :

- même système de coordonnées géographiques.

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Accès aux bases de données

• Limiter les accès :

- Utiliser un profil de connexion

• Privilégier la connexion directe

• Optimisation côté base de données

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Traitement des rasters

• Proscrire la publication dynamique de service de

carte raster

• Evaluer les plages de visibilité (utile pour créer le cache)

• Pyramidage et statistiques

• Mise en cache (service de carte ou d’image)

• Service d’images :

- Fonctionnalités

- Filtrages

- Mesures

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

La création de

cache Les atouts de la 10.2

SIG 2013. Atelier technique.

Dompter le fauve … Bien le connaître

• Nouveautés 10.2:

- Séparation des taches Création des tuiles / Création de la carte:

- Services System Caching Tool & CachingControler

- MapService

- Contrôle avancement: Status.gdb et résultats du geotraitement

ArcGIS Server : trucs et astuces

Seul le nombre d’instances du CachingTool agit sur la vitesse de création des tuiles !!

SIG 2013. Atelier technique.

Ménager sa monture …

• Optimiser les ressources

- Vérifier que le nombre d’instances défini pour le caching tool utilise

uniformément la ressource CPU disponible (< 75%)

- Vérifier que la mémoire occupée < 80% de la RAM totale

- Vérifier que l’occupation CPU noyau soit la plus faible possible

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Pré et Post publication

Les outils

d’analyse

Analyse (ArcMap)

PerfHeatMap

SIG 2013. Atelier technique.

L’outil d’analyse d’ArcMap

• Accessible lors du workflow de publication (ou directement depuis le

menu Fichier

• Objectif :

- identifier les ralentissements de performances et

les erreurs potentielles avant la publication de la

ressource SIG.

• Trois niveaux : - erreur : impossible de publier

- avertissement : problème de performances, d’apparence ou accès

- Message : bonnes pratiques

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Analyse : le menu contextuel

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

PerfHeatMap

• Test de performances sur une emprise géographique.

• Création d’une classe d’entités :

- classification selon le champ « response_time »

http://arcscripts.esri.com/details.asp?dbid=16880

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

PerfHeatMap : les étapes

1. Créer un schéma de tuilage

- échelles, emprise, référence spatiale

2. Lancer l’outil

- Classe d’entités en sortie

- Service de carte à analyser

- Emprise à traiter

- Taille de l’image retournée

3. Analyser la donnée dans ArcMap

- Représentation selon le champ « response_time »

http://arcscripts.esri.com/details.asp?dbid=16880

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique. ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

La gestion du site

SIG 2013. Atelier technique.

Le site remplace le modèle SOM-SOC

Sauvegarder votre site !!! Documenté :

http://resources.arcgis.com/en/help/main/10.2/index.html#//0154000

00619000000

Site = déploiement de machine(s) qui travaillent

ensembles

Cluster = Regroupe ou isole des

machines selon les services hébergés :

Servir une carte vs Geotraitement

Machine virtuelle: Limité à 2 CPU

> 15mn 75% d’utilisation

ArcGIS Server : trucs et astuces

Ajouter une machine

SIG 2013. Atelier technique.

Dimensionner services et site

ArcGIS Server : trucs et astuces

• Outils : Jmeter

- Définir un scénario de consommation de service

- Définir le nombre d’utilisateurs concurrants

- Exécuter le programme de test de charge

• En fonction des résultats:

- Actions sur les instances de service

- Action sur le site: Ajout / Isolation machine

SIG 2013. Atelier technique.

Actions sur les services

ArcGIS Server : trucs et astuces

• Isolation :

- Basse isolation:1 processus:8-24 instances

- Haute isolation:1 processus = 1 instance

• Instances :

- Mode statique : Services très consultés

- Mode dynamique : SOE et services peu consultés

Utilisation moindre des ressources

Services critiques / mises à jour

SIG 2013. Atelier technique.

Le Web Adaptor

SIG 2013. Atelier technique.

ArcGIS Web Adaptor, pour quoi faire ?

Compatible avec IIS et Java EE (WebSphere et WebLogic)

Fourni avec ArcGIS Server (installation séparée)

Petit composant s’intégrant dans un serveur WEB et

reroutant les requetes sur le/les ArcGIS Serveur du

site.

Quand l’utiliser : • Problematique DMZ – Reverse proxy

• Plusieurs ArcGIS Server (Load Balancing)

• Authentification par le serveur WEB

• Masquer le port 6080 et le nom d’instance (arcgis)

• Bloquer les accès administrateurs

http://wa.monorg.fr/map/rest/services

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Suivi des machines du site

• Il connait la liste des machines du site

- Si une machine est ajoutée ou retirée, mise à jour des nœuds du

site

• Les process :

1. Reçoit une requête cliente

2. Tente l’appel sur chaque machine du site

3. Si échec sur un nœud, bannit temporairement le Node et

continue

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Le Web Adaptor et la protection par firewall

Web Adaptor

Scénario simple avec un firewall entre réseau

externe et le serveur Web (+ Adaptor)

Web Adaptor

Scénario à plusieurs firewalls dans une

DMZ avec le Web Adaptor.

Web Adaptor

Scénario à plusieurs firewalls dans une

DMZ, utilisation d’un ReverseProxy

existant et Web Adaptor sur serveur

Web interne (masquer le port ArcGIS Server)

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Les scripts

d’administration

de site Admin API

SIG 2013. Atelier technique.

Intro : l’API Administrateur

• Programmer l'exécution automatique de tâches

courantes, via des scripts.

• Architecture RESTful et peut être appelée à partir de tout langage

capable d'effectuer un appel de service Web (Python, Java, JavaScript,

PowerShell, C#, Ruby, Scala, Perl, etc. )

• Pour exécuter un script qui utilise l'API Administrateur, il n’est pas necéssaire qu’un logiciel Esri

soit installé.

• Quelques exemples de scripts d’administration :

- Envoi d’e-mail si un service est indisponible

- Mise à jour des propriétés de services (ex nombre maximal d'instances)

- Gestion des autorisations sur des services à un utilisateur

- Interroger les journaux et créer des rapports d'utilisation à partir de

leur contenu

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Débuter avec les scripts d’administration

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Exemples de scripts

• Ecriture des propriétés des services du site dans un fichier CSV :

- http://resources.arcgis.com/fr/help/main/10.1/index.html#/na/0154000005wt000000/

- Copier le script de l’aide dans un fichier « .py » et l’exécuter

Ajouter un peu de code pour lister les services qui sont arrêtés anormalement.

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Exemples de scripts

• Statistiques de services à partir des journaux

d’ArcGIS Server - http://resources.arcgis.com/fr/help/main/10.1/index.html#/na/01540

00005qn000000/

- Création d’un fichier texte (csv) qui résume le nombre

d'affichages et la durée d'affichage moyenne pour chaque

service.

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Exemples de scripts

• Etendue des demandes de cartes dans une

couche de polygones

- http://resources.arcgis.com/fr/help/main/10.1/index.html#/na/01540

00005qn000000/

- Créé une classe d’entités avec les étendues et des

informations d'horodatage (affichage temporel)

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Statistiques serveur

• Cet accès est soumis à une identification de

type publisher ou administrator.

Carte1 (MapServer)

Carte1

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique.

Questions?

ArcGIS Server : trucs et astuces

SIG 2013. Atelier technique. ArcGIS Server : trucs et astuces