Frage

Die Diskussion Dual vs.Quadcore ist so alt wie die Quadcores selbst und die Antwort lautet normalerweise: „Das hängt von Ihrem Szenario ab.“Hier handelt es sich also um einen Webserver (Windows 2003 (nicht sicher, ob x32 oder x64), 4 GB RAM, IIS, ASP.net 3.0).

Mein Eindruck ist, dass die CPU in einem Webserver nicht SO schnell sein muss, da Anfragen normalerweise eher gering sind. Daher sollte es die bessere Wahl sein, mehr (langsamere) Kerne zu haben, da wir viele kleine Anfragen erhalten haben.

Da ich aber nicht viel Erfahrung mit IIS-Lastverteilung habe und nicht viel Geld ausgeben möchte, nur um herauszufinden, dass ich die falsche Wahl getroffen habe, kann jemand, der etwas mehr Erfahrung hat, dazu Stellung nehmen, ob oder nicht Mehr langsamere oder weniger schnellere Kerne ist besser?

War es hilfreich?

Lösung

Bei so etwas wie einem Webserver ist die Aufteilung der Aufgaben zur Handhabung der einzelnen Verbindungen (relativ) einfach.Ich kann mit Sicherheit sagen, dass Webserver eine der häufigsten (und ausgebügeltsten) Anwendungen von parallelem Code sind.Und da Sie einen Großteil der Verarbeitung in mehrere separate Threads aufteilen können, profitieren Sie tatsächlich von mehr Kernen.Dies ist einer der Hauptgründe, warum Shared Hosting überhaupt möglich ist.Wenn Serversoftware wie IIS und Apache Anfragen nicht parallel ausführen könnten, würde dies bedeuten, dass jede Seitenanforderung in einer Warteschlange verteilt werden müsste, was die Ladezeiten wahrscheinlich unerträglich verlangsamen würde.

Aus diesem Grund unterstützen High-End-Serverbetriebssysteme wie Windows 2008 Server Enterprise etwa 64 Kerne und 2 TB RAM.Dies sind Anwendungen, die tatsächlich so viele Kerne nutzen können.

Da außerdem jede Anfrage wahrscheinlich eine geringe CPU-Auslastung aufweist, können Sie (für einige Anwendungen) wahrscheinlich mit langsameren Kernen auskommen.Aber wenn jeder Kern schneller ist, kann das natürlich bedeuten, dass jede Aufgabe schneller erledigt werden kann und theoretisch mehr Aufgaben und mehr Serveranfragen bearbeitet werden können.

Andere Tipps

Wir verwenden Apache unter Linux, das einen Prozess zur Bearbeitung von Anfragen aufspaltet.Wir haben festgestellt, dass mehr Kerne unseren Durchsatz steigern, da sie die Latenz von Prozessen reduzieren, die darauf warten, in die Ausführungswarteschlange gestellt zu werden.Ich habe nicht viel Erfahrung mit IIS, aber ich kann mir vorstellen, dass das gleiche Szenario auch für den Thread-Pool gilt.

Mark Harrison sagte:

Ich habe nicht viel Erfahrung mit IIS, aber ich kann mir vorstellen, dass das gleiche Szenario auch für den Thread-Pool gilt.

Tatsächlich – mehr Kerne = mehr Threads, die gleichzeitig laufen.IIS ist von Natur aus multithreadfähig und nutzt dies problemlos aus.

Je mehr desto besser.Je komplexer und abstrakter Programmiersprachen werden, desto mehr Rechenleistung wird benötigt.

Atleat Jeff glaubt Quadcore ist besser.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top