Was ist der kostengünstigste legale Microsoft-Server-Stack, den Sie zusammenstellen können? [geschlossen]

10

Angenommen, Sie haben eine App-Infrastruktur, die im Allgemeinen nur Folgendes erfordert:

  • ASP.NET MVC / C # / .NET
  • Datenbank- oder NoSQL-Datenspeicher (muss über C # zugänglich sein)

Hier ist die Herausforderung für Sie Servergötter:

  1. Was ist die kostengünstigste Konfiguration, mit der Sie die Bereitstellung in der Produktion so durchführen können, dass keine Lizenzierungsregeln verletzt werden?
  2. Inwiefern unterscheidet sich diese Lösung vom "Standard" Microsoft-Bereitstellungsszenario?
  3. Wo bricht die Leistung dieser Lösung zusammen, sobald die App skaliert?

Ich mache mir keine Sorgen um die Hardware, nur um die Serversoftware selbst. Ich würde gerne etwas über Lösungen erfahren, die Sie persönlich in Produktion genommen haben. Besonders wenn es sich um einzigartige Alternativen handelt.

Berücksichtigen Sie bei Ideen einige der möglichen Variationen: a) Microsoft-Serverlösungen, bei denen die Eintrittsbarriere für den Wettbewerb mit OSS gesenkt wurde, oder b) OSS-Alternativen zu Microsoft-Produkten, die eine ähnliche Leistung erbringen.

Ein Beispiel für a) : SQL Server 2008 Express Edition SP1 ist eine 100% kostenlose Version von SQL Server, die auf die Anforderungen vieler kleinerer / frühzeitiger Anwendungen skaliert werden kann.

Ein Beispiel für b) : Ausführen des Mono Framework unter Linux.

Ein Beispiel für einen Unterschied zum "Standard" -Stack: Für die Ausführung von Mono unter Linux ist eine völlig andere Vertrautheit mit dem Server-Betriebssystem erforderlich. Keines der Windows-basierten Kenntnisse wird wirklich übertragen.

Ein Beispiel für eine Aufschlüsselung unter Skalierung: SQL Server Express wird nur auf 1 GB Arbeitsspeicher und 4 GB Festplattenspeicher skaliert. Nach diesem Zeitpunkt muss die Anwendung auf eine der kostenpflichtigen Versionen von SQL Server umsteigen.


HINWEIS: Es gibt eine Community-Wiki-Antwort für die Zusammenarbeit bei einer größeren Antwort. Fühlen Sie sich frei, mehr Details hinzuzufügen.

McKAMEY
quelle
1
Ich habe diese Frage abgelehnt, weil a) ein Community-Wiki sein sollte b) Sie nicht wirklich eine richtige Frage stellen und sie selbst in der Frage c) für die allgemeine Diskussion beantwortet haben. Sie waren zu restriktiv, um zu mehr als a zu führen paar Antworten
JamesRyan
Nun, die Frage gehört mir und nicht der Community, und ich denke, es ist eine faire Frage, auch wenn es schwierig ist, eine einzige richtige Antwort zu finden. Wie wäre es, wenn ich eine Antwort starte, die ein Community-Wiki ist? Würde das Ihre Perspektive befriedigen?
McKAMEY

Antworten:

6

Es hört sich so an, als hätten Sie Ihre eigene Frage beantwortet und Sam hat sie geklärt. Windows Server Web mit dem enthaltenen IIS und SQL Server Express. Sie bezahlen nur für Windows Server. Es gibt jedoch einen Punkt, an dem die Skalierung nicht möglich ist, sowohl in Bezug auf die Größe der Festplatte / Datenbank als auch auf das Transaktionsvolumen in Bezug auf die Leistung.

Im Interesse einer skalierbaren Alternative würde ich die Verwendung von MySQL unter Windows Server vorschlagen. Keine Lizenzkosten über Windows hinaus, und es wird so groß skaliert, wie Sie möglicherweise benötigen, und es scheint, dass C # darauf zugreifen kann .

Tomjedrz
quelle
2
Eigentlich würde ich für PostgreSQL stimmen, da es viel leistungsfähiger als MySQL ist. (und ich bin ein MySQL, der das auch sagt!)
Xeoncross
Sie können MySQL verwenden, aber es hängt von der App ab, ob sie (auf demselben Server) ordnungsgemäß skaliert wird. Mysqls connector.net ist nicht so robust wie das von SQL Server und weist einige Einschränkungen / Probleme auf (wie in den Versionshinweisen beschrieben (einer der zu behebenden Fehler ist, dass der Connector Speicher inhaliert). Also, während es funktionieren kann, bin ich es nicht sicher, dass es für die Produktion bereit ist
Jim B
6

Der absolut kostengünstigste Weg, dies zu tun, wenn Sie sich auf Ihre spezielle Situation beziehen , ist die Teilnahme an einem der Startprogramme von Microsoft: BizSpark oder WebsiteSpark .

Jeder hat unterschiedliche Beitrittsanforderungen, deckt eine bestimmte Nische ab und bietet unterschiedliche Zugriffsebenen auf Microsoft-Produkte. Beide bieten jedoch eine 3-jährige programmgerechte Nutzung der Produktionslizenz für 100 US-Dollar an. Und das müssen Sie nicht einmal im Voraus bezahlen. Es ist eine Programm-Exit-Gebühr, die Sie zahlen, wenn Sie das Programm verlassen.

Joe Internet
quelle
+1 Das ist die Art von Antwort, die ich hören wollte: etwas anderes als die offensichtlich niedrigsten Endversionen der regulären Produkte.
McKAMEY
3

Wenn Sie ein Windows-Betriebssystem verwenden möchten, ist es am günstigsten, die Web Edition von Windows Server zu erhalten. Die neueste Version ist Server 2008 R2 Web Edition. Auf diese Weise können Sie nur IIS- und DNS-Rollen ausführen. Dies sollte ausreichen, um Ihre Anforderungen zu erfüllen.

Seit Server 2008 hat MS Ihnen erlaubt, SQL auf der Web Edition zu installieren (dies war in Server 2003 nicht der Fall). Wenn Sie dies und SQL Express erhalten (vorausgesetzt, dies entspricht Ihren Anforderungen), sollten Sie nicht anwesend sein.

Die Web Edition beschränkt Sie auf 32 GB RAM und 4 CPU-Sockel. Die R2-Version ist nur 64 Bit.

Sam Cogan
quelle
1
Sie konnten (und durften) SQL Server Express Edition auch unter Win2003 Web Edition ausführen. Ich habe immer noch einen solchen Server.
RealMarkusSchmidt
@markus nicht in der RTM Edition der 2003 Web Edition enthalten, mussten Sie auf SP1 aktualisieren, um diese Funktionalität hinzuzufügen. Prob hätte das klarer machen sollen.
Sam Cogan
1

Windows Server-Preise: http://www.microsoft.com/windowsserver2008/de/us/pricing.aspx

Preise für SQL Server: http://www.microsoft.com/sqlserver/2008/en/us/pricing.aspx

Vergessen Sie auch nicht einige Entwicklungswerkzeuge. Die Visual Studio Express- Editionen können eine Menge leisten und kosten Sie nichts.

Wenn SQL Express nicht auf Ihre Anforderungen skaliert, gibt es auch eine SQL Server-Web-Edition, die kostengünstiger als die Standard- oder Enterprise-Edition erhältlich ist.

Beachten Sie, dass dies die von Microsoft angegebenen Standard-Einzelhandelspreise sind. Der Kauf über einen Wiederverkäufer und / oder über eine Volumenlizenzoption kann zu erheblichen Preisnachlässen führen (abhängig von Ihren Umständen - möglicherweise nur 10% der Standardverkaufskosten).

Maximus Minimus
quelle
+1 für die Erwähnung der Web Edition von SQL Server
Oskar Duveborn
-1

Starten eines Community-Wikis, um eine gute Antwort auf diese Frage zu erhalten.


Betriebssysteme:

Windows Web Server 2008 R2 / IIS 7.5 / ASP.NET (469 US-Dollar im Einzelhandel)

Einschränkungen:

  • Beschränkt auf die Webrolle

Linux / Apache / Mono Framework (0 US-Dollar im Einzelhandel)

Einschränkungen:

  • Erfordert völlig neue Verwaltungsfähigkeiten

Datenbankplattformen:

SQL Server 2008 Express Edition SP1 (0 US-Dollar im Einzelhandel)

Einschränkungen:

  • 1 GB RAM
  • 4 GB Festplatte

MySQL ($ 0 im Einzelhandel)

Einschränkungen:

  • [MACHEN]

PostgreSQL ($ 0 im Einzelhandel)

Einschränkungen:

  • [MACHEN]

SQL Server Web Edition (15 USD pro Prozess und Monat (SPLA))

Einschränkungen:

  • [MACHEN]

Entwicklungswerkzeuge

Visual Studio Express-Editionen (0 US-Dollar im Einzelhandel)

Einschränkungen:

  • [MACHEN]
McKAMEY
quelle
Woher bekommen Sie die Preise? Meines Wissens ist die Web Edition nur unter SPLA verfügbar und das bedeutet ... monatliche Zahlung.
TomTom
Setzen Sie keine Preise, setzen Sie keine Links zu Preisen - sie ändern sich im Laufe der Zeit, diese Seite könnte für Jahre relevant sein ...
Jon Rhoades
1
Es ist ein Community-Wiki. Bitte zögern Sie nicht, es zu verbessern, anstatt es nur abzustimmen.
McKAMEY