Empfohlene Serverspezifikationen für GeoServer

16

Wir liefern unsere geografischen Daten über unsere Flaggschiff-Anwendung Dorset Explorer . Hierbei werden OpenLayers und GeoServer verwendet, um unsere geografischen Daten bereitzustellen, einschließlich OSM- und OS-Grundkarten und einer Vielzahl anderer Daten wie Luftaufnahmen, Schulen usw.

Meine Frage ist, welche Art von Serverspezifikationen sollten wir für GeoServer verwenden. Wir werden nur einen Server für die Lieferung von Kacheln über WMS zur Verfügung haben (und möglicherweise werden wir in Zukunft auch WFS darauf verwenden). Wir haben zwischen 100 und 200 Benutzer pro Tag, aber dies wird hoffentlich zunehmen, sobald wir zuversichtlich sind, dass die Server aushalten werden! Ist es nur eine Frage der Einhaltung der höchsten Spezifikationen, die wir uns leisten können, oder gibt es Grenzen oder theoretische Höchstwerte?

Alle Hinweise wäre sehr dankbar!

Rob Quincey
quelle
1
Gibt es ein Budget dafür oder benötigen Sie allgemeine empfohlene Spezifikationen?
Mapperz
Nur ein paar allgemeine empfohlene Spezifikationen, was auch immer jemand für das beste Setup für GeoServer hält, um in einer solchen Umgebung zu laufen. Wäre es zum Beispiel wert, das Maximum auszugeben, das wir können, um ihm wirklich hohe Spezifikationen zu geben, oder wäre das eine Geldverschwendung, wenn GeoServer es nicht nutzen kann.
Rob Quincey

Antworten:

12

100-200 Benutzer pro Tag sind (normalerweise) nichts, ein Notebook kann diese Last aufnehmen, wenn die Karte nicht komplex ist.

Generelle Richtlinien:

  • Holen Sie sich genügend Speicher (mindestens 8 GB), aber geben Sie nicht alles an GeoServer weiter
  • Verwenden Sie Intel-CPUs, keine AMDs, da native JAI-Erweiterungen unter Intel schneller funktionieren
  • Versuchen Sie, zwei Server zu beschaffen und sie in einem Cluster für hohe Verfügbarkeit einzurichten (2 Quadcore sollten ausreichen). Wenn die Last steigt, müssen Sie nur weitere Server hinzufügen
  • Stellen Sie sicher, dass Ihre Daten für die Leistung ordnungsgemäß konfiguriert sind: http://demo.geo-solutions.it/share/foss4g2011/gs_steroids_sgiannec_foss4g2011.pdf
  • Wenn Sie über genügend Speicherplatz verfügen, sollten Sie das Kachel-Caching für die Ebenen in Betracht ziehen, die sich nicht häufig ändern
  • Führen Sie einige Auslastungstests durch, um festzustellen, wie weit Sie mit Testhardware kommen, und skalieren Sie die Server entsprechend der erwarteten Auslastung.
Andrea Aime
quelle
Wenn Sie "GeoServer nicht den gesamten Speicher zur Verfügung stellen" sagen, können Sie dann erläutern, warum? Ich entschuldige mich für mein leichtes "Nein" in diesem Bereich. Ich bin nicht die Person, die GeoServer wirklich betreibt, obwohl ich stark daran beteiligt bin. Ich bekomme hier nur Fragen und Ratschläge! Oh und FYI, unsere Abbildung ist ziemlich komplex, über 700 Schichten und wächst, eine Mischung aus Raster, einfache und komplexe Vektor, Transluzenz, benutzerdefinierte Schriftarten, nennen Sie es wir haben es zu dienen: P
Rob Quincey
1
Da GeoServer es nicht verwendet, während der Dateisystem-Cache es nutzen kann, um Service-Raster-Daten und Shapefiles zu beschleunigen. Mit so vielen Layern kann es in der Tat zu einem Problem werden, und gleichzeitig würde niemand, der bei Verstand ist, so viele auf dieselbe Karte setzen ... stellen Sie einfach sicher, dass der Client den Benutzern nicht erlaubt, zu komplexe Karten einzurichten. Und machen Sie einige Belastungstests mit typischen Anwendungsfällen
Andrea Aime
"Niemand, der bei Verstand ist, würde so viele [Ebenen] auf dieselbe Karte setzen". Sie kennen unsere Benutzer nicht ... :)
Rob Quincey
Das ist ein umfangreiches PDF, das Sie dort verlinkt haben @AndreaAime, kann weder Kopf noch Zahl daraus machen, hauptsächlich aufgrund von Noob-Ness
Daniël Tulp
6

Die Auswahl des richtigen Servers ist immer eine schwierige Aufgabe, da Ihr Dienst in kurzer Zeit sehr beliebt werden kann und Ihre tausend Dollar teure Hardware unbrauchbar macht.

- Da jede Anwendung (auch wenn sie denselben Software-Stack verwendet) ihre eigenen Anforderungen hat, empfehle ich, einige Stresstests auf einem Cloud-basierten Server wie Amazon AWS durchzuführen. Die Kosten für die Durchführung dieser Tests sind unerheblich.

- Es ist möglich, eine Beziehung zwischen AWS-Hardware (zum Beispiel) und Standardhardware herzustellen, sodass Sie verschiedene Konfigurationen für eine unterschiedliche Anzahl von Benutzern und Anforderungen ausprobieren können, um eine Vorstellung davon zu erhalten, wie sich Hardware und Software in Zukunft verhalten werden. Beispiele: hier und hier .

-Wenn es eine Option für Sie ist, können Sie IMO auf dem Cloud-Server beliebig hoch- und runterskalieren.

Pablo
quelle
1
Cloud ist leider keine Option, aber eine gute Antwort mit einigen interessanten Punkten. Ich werde es nicht akzeptieren, um zu sehen, ob jemand anderes etwas hinzufügt :)
Rob Quincey