Das Rendern von Geoserver WMS-Kacheln ist zu langsam

9

Ich habe folgenden Geoserver-Status. Ich habe JAI installiert, aber der von jai verwendete Speicher ist 0 und das Rendern von Bildern für wms ist sehr langsam.Geben Sie hier die Bildbeschreibung ein

Ist es ein Problem mit der Speicherzuweisung? Ich benutze SQL Server 2008.

Kinkajou
quelle
Welche Art von Kacheln rendern Sie? Wenn es sich um Vektorkacheln handelt, ist JAI vermutlich nicht wirklich in den Prozess involviert.
Ian Turton
@iant Ich verwende eine vom SQL Server veröffentlichte Schicht und WMS. Bedeutet das, dass es sich um Vektorkacheln handelt? Und wenn ja, dann wird die Leistung dadurch nicht verändert?
Kinkajou

Antworten:

7

Von dieser Seite :

Insbesondere die Installation des nativen JAI ist wichtig für die gesamte Rasterverarbeitung, die sowohl in WMS als auch in WCS häufig zum erneuten Skalieren, Ausschneiden und Neuprojektieren von Rastern verwendet wird. Die Installation der nativen JAI ist auch wichtig für das Lesen und Schreiben von Raster, was sowohl WMS als auch WCS betrifft. Schließlich ist native JAI auch dann sehr nützlich, wenn keine Rasterdaten beteiligt sind, da für die WMS-Ausgabecodierung PNG / GIF / JPEG-Bilder geschrieben werden müssen, die selbst Raster sind.

Wenn Sie also WMS-Kacheln eines Vektordatensatzes zeichnen, werden Sie feststellen, dass die Verwendung des nativen JAI etwas schneller ist, aber wahrscheinlich nicht viel. Wenn Ihre Karte ein Abdeckungs- / Raster-Datensatz (Satellitenbilder oder Luftbilder) ist, sehen Sie eine Geschwindigkeit mit dem nativen JAI.

Wenn Sie eine langsame Kartengenerierung aus einer Vektorquelle haben, besteht die wahrscheinlichste Verlangsamung darin, dass Sie keinen räumlichen Index für Ihre Datenquelle haben, versuchen, zu viele Daten zu zeichnen, oder dass Sie sie überstylen (oder eine ineffiziente SLD-Datei verwenden) ).

Weitere Einzelheiten zu möglichen Arbeiten finden Sie unter http://www.slideshare.net/mobile/geosolutions/geoserver-on-steroids

Ian Turton
quelle
1
Was meinst du mit ineffizienter SLD-Datei?
user1919
@ user1919, z. B. die Verwendung von Linienrändern für Ihre Straßen bei mehreren Zoomstufen.
Nasser Tahani
7

Versuchen Sie, Ihrem Shapefile einen Index hinzuzufügen, wie in @iant vorgeschlagen.

Der Befehl für Geoserver lautet:

java -cp .:gt-shapefile-2.7.3.jar org.geotools.data.shapefile.indexed.ShapeFileIndexer /path/to/your/shapefile.shp

und es muss aus dem Verzeichnis geoserver / WEB-INF / lib als Benutzer ausgeführt werden, der im Shapefile-Verzeichnis lesen / schreiben kann. Abhängig von Ihrer Geoserver-Version müssen Sie möglicherweise die JAR-Versionsnummern ändern.

Ich habe es hier zum ersten Mal erwähnt , wo andere Methoden zum Erstellen des Index zitiert werden.

Unicoletti
quelle
Ich benutze SQL Server 2008.
Kinkajou