2010-01-21 3 views
1

Nous essayons d'afficher une carte avec un grand nombre de points (allant de 1000 à 20000 selon les critères des utilisateurs) en utilisant OpenLayers et GeoServer. Les points sont stockés dans une base de données PostgreSQL.Quelles sont les limites de GeoServer et OpenLayers lors de l'affichage d'un grand nombre de points?

Alors que l'application semble avoir peu de problème à afficher la plage inférieure, sa limite pratique semble être d'environ 5000 points. Le SLD que nous appliquons est également énorme (listant tous les points individuellement par critère qui n'est pas l'identifiant de la fonction). À des nombres plus élevés, l'image n'est pas garantie d'être retournée, et la demande bloque parfois GeoServer, exigeant que le service soit réinitialisé.

Est-ce que quelqu'un sait si une telle chose est faisable, et si oui, de conseils de configuration?

Nous avons appliqué un index btree sur le champ utilisé pour le filtrage.

Répondre

1

Quel type de couche ajoutez-vous à OpenLayers? Vous pouvez utiliser une couche WMS plutôt que d'avoir les points que les caractéristiques du vecteur:

http://dev.openlayers.org/docs/files/OpenLayers/Layer/WMS-js.html

GeoServer alors générer une image des points, et que seulement besoin de passer au format PNG JPEG de quelques kbs plutôt que la géométrie et les informations de style qui seraient beaucoup plus grandes. Vous perdriez cependant une partie de la fonctionnalité côté client (événements survolés, etc.)

Si vous le faites déjà, il se peut qu'il y ait un problème distinct. 5000 points devraient être bien à gérer sur le serveur.

Vous pouvez également vouloir repenser la manière dont vous affichez les points. 5000 points à la fois semble comme si cela pouvait être très déroutant. Peut-être que l'utilisation de cercles de tailles différentes pour représenter 10, 100, 500 points, etc. serait plus facile en termes de traitement et de visualisation.

+0

Merci beaucoup pour votre réponse. Nous utilisions la couche WMS (j'aurais dû le dire). Je suis d'accord que le nombre de points affichés était confus, donc nous montrons les données d'une manière différente (en utilisant les frontières politiques). Le niveau de point n'apparaît maintenant qu'après un zoom avant sur un niveau où ils deviennent plus utiles. – zod

Questions connexes