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:
- Was ist die kostengünstigste Konfiguration, mit der Sie die Bereitstellung in der Produktion so durchführen können, dass keine Lizenzierungsregeln verletzt werden?
- Inwiefern unterscheidet sich diese Lösung vom "Standard" Microsoft-Bereitstellungsszenario?
- 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.
quelle
Antworten:
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 .
quelle
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.
quelle
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.
quelle
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).
quelle
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:
Linux / Apache / Mono Framework (0 US-Dollar im Einzelhandel)
Einschränkungen:
Datenbankplattformen:
SQL Server 2008 Express Edition SP1 (0 US-Dollar im Einzelhandel)
Einschränkungen:
MySQL ($ 0 im Einzelhandel)
Einschränkungen:
PostgreSQL ($ 0 im Einzelhandel)
Einschränkungen:
SQL Server Web Edition (15 USD pro Prozess und Monat (SPLA))
Einschränkungen:
Entwicklungswerkzeuge
Visual Studio Express-Editionen (0 US-Dollar im Einzelhandel)
Einschränkungen:
quelle