HeatMap pour identifier les zones sensibles sur le service mis en cache à partir d'ArcGIS Server?

14

ArcGIS Server vous permet de créer des services de carte mis en cache. Ceux-ci peuvent être consommés par diverses applications (ArcGIS Desktop, applications Web, etc.) Je voudrais avoir une idée des zones de mon cache qui sont le plus touchées. Je voudrais visualiser ces résultats en utilisant une carte thermique superposée sur la même carte mise en cache. Je pensais utiliser quelque chose comme HeatMapsAPI et l'une des API fournies par ESRI (l'API Javascript devrait être suffisante)

Je sais que les cartes mises en cache peuvent être légèrement en train de changer à la version 10 d'ArcGIS Server, mais j'essaie de penser à la meilleure façon de déterminer quelles tuiles sont le plus demandées sans mettre une charge significative sur ArcGIS Server ou le serveur Web (IIS).

Je pensais à l'origine en regardant le répertoire de cache réel sous le dossier arcgiscache, et peut-être en me connectant à l'attribut Date d'accès (mais j'ai peu d'idée sur la façon de l'implémenter).

J'aimerais entendre toute personne ayant une expérience avec ArcGIS Server, si elle a des suggestions sur la façon de procéder?

Simon
la source
Comment dois-je procéder pour le déplacer sur le site SIG?
Simon

Réponses:

9

La société pour laquelle je travaille (Latitude Geographics) fabrique un produit appelé Geocortex Optimizer qui peut le faire pour vous.

Il analyse à la fois vos journaux ArcGIS Server et vos journaux IIS pour déterminer quelles parties de vos cartes sont demandées:

Exemple de carte thermique

Ce sont les résultats de certains tests de résistance que nous avons effectués, donc ce n'est pas aussi représentatif du résultat final. (Normalement, vous n'obtenez que des zones vraiment "chaudes" sur les centres urbains)

Si vous souhaitez plus d'informations, utilisez la fonction "Demander une démo" sur notre site Web .

mwalker
la source
4

Une autre méthode consiste à créer quelque chose dans le client qui enregistre l'utilisation. (C'est essentiellement ce que fait HeatMapAPI.)

Trop simplifié: enregistrez les extensions, les clics des utilisateurs ou les vignettes dans une base de données. Créez ensuite un service ArcGISServer qui effectue le rendu à partir de cette base de données. Ajoutez-le en tant que couche à la carte.

Vous pouvez également essayer d'utiliser le service HeatMapsAPI également: http://www.heatmapapi.com/HeatmapGenerate2WS.asmx . Ils ont des exemples pour les clients côté serveur. D'après l'apparence du service, je soupçonne qu'il pourrait également être utilisé par un client côté client.

Ruz
la source
1

Vous pourrez peut-être utiliser le journal de votre serveur Web pour savoir quelles images ont été demandées. Ce n'est pas l'idéal car il faudrait "revenir en arrière" à partir du nom de fichier et du répertoire pour déterminer où l'utilisateur a consulté, mais vous aurez accès au "niveau" qu'il a consulté (car il fait partie de la structure des dossiers) en plus de la noms de fichiers image demandés.

Une fois que vous avez accumulé une quantité décente d'informations à partir du journal, vous pouvez regarder les images les plus fréquemment consultées (c'est-à-dire les visualiser physiquement) pour déterminer où les demandes sont effectuées.

Michael Todd
la source
0

Bien que ce ne soit pas une réponse directe à cette question, perfHeatMap est un excellent outil pour comprendre quelles parties de vos services de carte dynamique rendent le plus lent, en visualisant la sortie sous forme de carte thermique.

Cet outil échantillonne une zone géographique définie d'intérêt à des échelles définies en effectuant des opérations REST exportMap sur un service de carte. La classe d'entités résultante peut être affichée via ArcMap avec une palette de couleurs graduée sur le temps de réponse.

Simon
la source