2010-05-21 6 views
9

Chaque fois que nous ajoutons une nouvelle couche à nos OpenLayers site Web basé (données fournies principalement par un serveur GeoServer ), nous discutons de savoir si l'utilisation d'une seule tuile ou une approche en mosaïque.OpenLayers, couches: carrelé contre unique tuile

Certains des paramètres que nous évaluons sont les suivantes:

Utilisation de la carrelage approche nous obtenons:

  • accumulation lente mais continue de la fenêtre
  • Beaucoup de petites images
  • Possibilités de mise en cache côté client
  • Blocage de le pipeline de chargement (6 requêtes à la fois)
  • Jerky sentiment lors de la navigation lors du chargement

Utilisation de la approche unique tuile nous obtenons:

  • Lisseur sentiment lors de la navigation lors du chargement
  • Délai avant le chargement de la couche
  • Une grande image pour chaque couche
  • Aucune mise en cache de la tuile

Nous avons beaucoup d'édition de données dans les couches, donc une tuiles cache pourrait ne pas être efficace que.

Existe-t-il meilleures pratiques en ce qui concerne le carrelage?

Progresser vers infiniment rapide du matériel et connexions de données illimitées, la discussion devient hors de propos, mais quelle configuration vous perçois comme le plus agréable à l'utilisateur?

Répondre

6

La plupart des utilisateurs IMO agréable serait une rétroaction instantanée via le chargement progressif des carreaux après tout panoramique ou zoom. Je n'ai vraiment utilisé que des tuiles simples pour des rapports personnalisés à des échelles ou tailles qui ne correspondent pas à mes tuiles.

Il n'est pas sûr de votre message comment vous servez vos données. Chaque ensemble de données est-il servi à partir d'un service WMS distinct ou combiné en un seul?

Vous pouvez toujours grouper des calques qui changent rarement et les définir pour utiliser des carreaux mis en cache, et pour les calques souvent édités les avoir comme calques de carreaux individuels non mis en cache séparés (ou temps de cache plus courts).

Le problème principal avec les tuiles est le nombre que vous pouvez charger à n'importe quel moment. Si vous accélérez cela, il n'y aura peut-être pas de différence notable de vitesse.

Pour des performances de tuiles:

  • Vous pouvez doubler le nombre de tuiles qui se chargent à la fois en utilisant par exemple pour charger des tuiles deux domaines différents imsg1.maps.com et imgs2.maps.com
  • Vous pouvez réduire le tampon des mosaïques autour de la fenêtre de sorte que seules les mosaïques visibles soient chargées.
  • Il y a un certain nombre de conseils de performance à http://trac.mapfish.org/trac/mapfish/wiki/HowToOptimize

En supposant que vous utilisez WMS alors les liens suivants peuvent vous aider à décider sur les "meilleures pratiques":