Ich zerpflücke mal die Anforderung:
> Website
Ok, Webserver werden benötigt.
> aufwendige Räumliche Darstellungen
Wie die anderen Poster hier schon geschrieben haben, stellt sich hier die Frage, ob der Server oder die Clients die Darstellung berechnen.
Fall 1 - Der Client berechnet:
Für dich wäre das die ökonomische Variante, da du hierfür keine dicke Rechenleistung zur Verfügung stellen muss. Andererseits kann eventuell nicht jeder Client diese Darstellung berechnen, weil die Unterstützung für so was fehlt (man denke an Smartphones und Tablets).
Fall 2 - Der Server berechnet:
Das wäre die (wesentlich) teurere Variante, aber dafür funktioniert das dann auch bei jedem Client. Auch hier muss man unterscheiden: Sollen Änderungen an der Darstellung sofort dargestellt werden? Wenn ja, dann musst du ggfs. massiv Rechenleistung vorhalten, um eine einigermaßen ansprechende Performance zu erreichen. Wenn die Aktualität nicht so dringend ist (haben also zB ein paar Stunden Zeit), dann reicht auch weniger Hardware.
Ich empfehle dir, auf Cloud Computing zu setzen. Das erlaubt hohe Skalierbarkeit und stellt auf Wunsch Rechenleistung und Server teils automatisch und on-demand bereit. ZB die
Amazon Web Services wären da geeignet. Es gibt aber noch mehr Anbieter in dieser Richtung.
Fall 3 - Hybrid-Betrieb:
Je nach Client, berechnet dieser die Darstellung selber oder muss es von einem Server machen lassen. Von den laufenden Kosten her liegt das zwischen Fall 1 und 2. Allerdings steigt der Aufwand für die Softwareprogrammierung auf fast das doppelte, da nun zwei Programme für die Darstellung geschrieben werden müssen.
> Farbe, Objekte... in HD
Das klingt nach vielen Assets (das sind Texturen, Objekte, etc.). Gerade bei Texturen musst du mit viel Speicherplatz und damit einhergehend mit viel Traffic rechnen.
> 10.000 User
Du wirst hier mehrere Server benötigen, damit so viele Clients gleichzeitig mit annehmbarer Reaktionszeit bedient werden können. Vermutlich brauchst du einige Dutzend Downloadserver, die ausschließlich Assets bereitstellen. Daneben brauchst du eventuell Server, die die Berechnung der Darstellung übernehmen. Und davon echt viele, um einen größeren Computer Cluster wirst du dann nicht herumkommen. Daneben brauchst du wahrscheinlich auch ein, zwei Datenbankserver und mehrere Webserver. Ein Load Balancer, der die Clients auf die Server verteilt, wäre auch keine schlechte Idee. Ein bis zwei sollten reichen. Und zum Schluss brauchst du noch irgendeine Form eines Backupsystems, damit im Falle eine Datenverlustes oder Hackerangriffs das ursprüngliche System wiederhergestellt werden kann.
Du wirst einiges an Leuten brauchen, die die nötige Software schreiben, Assets erstellen und später alles warten müssen. Ich tippe da auf ein Team von 1-2 Webentwicklern, 1-3 Grafikprogrammierer, je nach Umfang 2-x Asset-Designer, 2+ Administratoren, 1-x Supportmitarbeiter und 2+x Leute, die den Leuten ihre Aufgabe zuweisen und ihren Kopf hinhalten, wenn was schief geht. Je nachdem, wie viel Qualität und Umfang am Ende erwartet wird, brauchst du locker 6 Monate bis mehrere Jahre, ehe das alles fertig entwickelt ist und läuft.
Ziemlich ambitioniert, das wird sicher lustig!
