Considérations sur la création de cartes

Pour rendre une carte disponible sur le Web, vous devez la créer dans ArcMap, la publier sur votre site ArcGIS for Server, puis utiliser le service de carte résultant dans une application cliente. De nombreuses opérations possibles avec les services de carte nécessitent une certaine préparation dans la phase de création initiale. Cette rubrique comprend des interrogations à envisager lors de la création d'une carte destinée à être publiée sur votre site.

Astuces générales

Les astuces suivantes sont importantes pour toutes les cartes devant être publiés sur votre site ArcGIS Server :

Pouvez-vous mettre en cache la carte pour améliorer les performances ?

Si votre carte contient des données peu susceptibles de changer, envisagez de la mettre en cache pour améliorer les performances. Lorsque vous mettez votre carte en cache, vous créez un ensemble de cartes de type image prérendue à certains niveaux d'échelle. La mise en cache réelle survient après la publication de votre carte en tant que service. Toutefois, si vous avez l'intention de mettre la carte en cache, cela influence le processus de création de la carte. Vous devez créer la carte pour lui conférer une apparence convenable à toutes les échelles mises en cache. Vous pouvez utiliser tous les outils cartographiques sans effet sur les performances, car les tuiles mises en cache sont uniquement des images des données ; les moteurs de rendu et d'étiquetage réels ne sont pas utilisés après la création du cache.

Si vous ne pouvez pas mettre votre carte en cache, les moteurs d'étiquetage et de rendu affectent les performances du service de carte. Pour plus d'informations, reportez-vous à la rubrique En quoi consiste la mise en cache de carte ?.

Conseils relatifs aux performances pour les cartes non mises en cache

Vous devez créer un cache de carte dans toutes les situations appropriées. Toutefois, si vous disposez de volumes de données importants qui changent fréquemment, il peut s'avérer impossible de créer et de gérer un cache de carte. Dans ce cas, vous pouvez utiliser les astuces ci-dessous pour améliorer les performances de votre carte. Au moment de publier votre carte, vous aurez la possibilité de l'analyser avec l'Editeur de services. Cela vous aidera à cerner rapidement des moyens d'améliorer la performance de votre carte.

Amélioration des performances d'affichage des services de carte

Lorsque les clients envoient des demandes à ArcGIS for Server pour afficher un service de carte, la réponse du serveur est généralement mise en cache par le navigateur et réutilisée pendant un certain temps. Ce comportement aide ArcGIS for Server à optimiser les performances d'affichage pour votre service de carte. Toutefois, selon la manière dont votre service de carte et les données qui lui sont associées sont utilisés dans les applications, vous pouvez envisager d'ajuster la durée pendant laquelle le navigateur utilisera une réponse figurant dans son cache. Pour cela, il convient d'ajouter une propriété nommée cacheControlMaxAge dans le fichier JSON (JavaScript Object Notation) du service.

Utilisation de la propriété cacheControlMaxAge

Les réponses des services de carte ArcGIS for Server incluent un en-tête ETag (balise d'entité) et Cache-Control. La valeur de l'en-tête ETag identifie de façon unique la réponse. L'en-tête Cache-Control possède une valeur d'âge maximal qui informe le navigateur de la durée maximale pendant laquelle il peut réutiliser une réponse à partir du cache du navigateur. Cette valeur est contrôlée par la propriété cacheControlMaxAge.

Lorsqu'une demande est répétée et que l'âge maximal du cache n'a pas encore expiré, le navigateur utilise la réponse mise en cache sans envoyer la demande au serveur. Si l'âge maximal a expiré, le navigateur doit envoyer la demande au serveur et définir un en-tête IF-NONE-MATCH avec une valeur ETag associée correspondant à la réponse présente dans le cache. ArcGIS for Server évalue la demande et utilise la valeur ETag pour déterminer si la réponse a changé. Si la réponse du serveur diffère de la copie stockée dans le navigateur, le serveur envoie une réponse entièrement nouvelle au navigateur. Si la réponse est identique à la copie du navigateur, le serveur avertit le navigateur de continuer à utiliser la réponse présente dans son cache.

Définition de la valeur de la propriété cacheControlMaxAge

En tant qu'administrateur ArcGIS for Server, vous pouvez définir la propriété cacheControlMaxAge afin de spécifier la durée pendant laquelle un navigateur est autorisé à utiliser une réponse mise en cache. Le fait de réduire les éventualités où ArcGIS for Server doit envoyer une réponse complète permet d'améliorer l'efficacité du cache de votre navigateur, de favoriser l'optimisation de vos applications et d'économiser la bande passante de votre réseau.

La valeur par défaut pour les services de carte est 0. Cela signifie que le navigateur renverra toujours une demande et qu'ArcGIS for Server traitera cette demande et enverra une réponse complète au navigateur si le contenu a changé. Cette valeur fonctionne correctement pour la plupart des applications.

Pour les services de carte avec des jeux de données ou une symbologie qui changent fréquemment, une valeur telle que 5 minutes (300 secondes) est recommandée. Dans les applications avec des animations ou des données temporelles, vous devez envisager d'augmenter cette valeur pour rendre les animations plus fluides.

Pour ajouter la propriété cacheControlMaxAge à votre service et spécifier sa valeur par défaut, procédez comme suit :

  1. Dans un navigateur Web, ouvrez le répertoire d'administrateur d'ArcGIS for Server et connectez-vous avec un utilisateur doté des privilèges d'administrateur. L'URL est au format suivant : http://gisserver.domain.com:6080/arcgis/admin.
  2. Cliquez sur services et sélectionnez le service de carte à modifier dans la liste Services. Si votre service n'apparaît pas dans cette liste, il est peut-être dans un répertoire sous le dossier racine.
  3. Dans la page Service - <nom du service> (<type de service>), faites défiler l'affichage vers le bas et cliquez sur modifier.
  4. Dans la boîte de dialogue Propriétés du service, recherchez la section "properties" du fichier JSON du service.
  5. Ajoutez la propriété cacheControlMaxAge dans la section et spécifiez sa valeur (en secondes). Par exemple :
    "properties": {
      "cacheControlMaxAge": "300",
    
  6. Cliquez sur Enregistrer les mises à jour.
  7. Dans la page Service - <nom du service> (<type de service>), vérifiez que la propriété cacheControlMaxAge et la valeur que vous lui avez attribuée figurent dans la section Propriétés.

Allez-vous afficher cette carte sur un périphérique mobile ?

La fonction Accès aux données mobiles vous permet d'extraire le contenu d'un service de carte pour l'afficher sur une tablette PC ou un appareil Windows Mobile. Si vous savez que votre carte doit être affichée sur un périphérique mobile, rendez-la simple. Envisagez la généralisation des données, comme le lissage de polygone et la réduction de la résolution du raster, pour les couches de référence ou d'arrière-plan. Cela permet d'accélérer l'affichage de la carte.

Allez-vous effectuer une analyse du réseau sur le serveur avec cette carte ?

Si vous avec l'intention d'utiliser cette carte pour l'analyse du réseau sur le serveur, vous devez inclure une couche d'analyse du réseau qui référence un jeu de données réseau. Lorsque vous publiez le service de carte, vous avez ensuite l'option d'activer la fonction Analyse du réseau. Cette opération crée un service Web pour l'exécution de tâches d'analyse du réseau sur votre carte.

5/10/2014