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.