En supposant que vous disposez d'une infrastructure d'application qui nécessite généralement uniquement:
- ASP.NET MVC / C # / .NET
- Base de données ou magasin de données NoSQL (doit être accessible depuis C #)
Voici le défi pour vous, les dieux du serveur:
- Quelle est la configuration la moins chère qui vous permettra de déployer en production sans enfreindre les règles de licence?
- En quoi cette solution diffère-t-elle du scénario de déploiement Microsoft «standard»?
- Où les performances de cette solution diminuent-elles une fois que l'application commence à évoluer?
Je ne m'inquiète pas du matériel, seulement du logiciel serveur lui-même. J'aimerais connaître toutes les solutions que vous avez personnellement mises en production. Surtout s'il s'agit d'alternatives uniques.
Pour des idées, considérez certaines des variantes possibles, a) toutes les solutions de serveur Microsoft où elles ont abaissé la barrière à l'entrée pour concurrencer OSS, ou b) toutes les alternatives OSS aux produits Microsoft qui fonctionnent à un niveau similaire.
Un exemple de a) : SQL Server 2008 Express Edition SP1 est une version 100% gratuite de SQL Server qui s'adaptera aux besoins de nombreuses applications plus petites / à un stade précoce.
Un exemple de b) : exécuter le Mono Framework sous Linux.
Un exemple de différence par rapport à la pile "standard": l'exécution de Mono sous Linux nécessitera une familiarité complètement différente avec le système d'exploitation du serveur. Aucune des connaissances basées sur Windows ne transfère vraiment.
Un exemple de décomposition sous échelle: SQL Server Express n'évolue qu'à 1 Go de mémoire et 4 Go de stockage sur disque. Après ce point, l'application devra passer à l'une des versions payantes de SQL Server.
REMARQUE: Il existe une réponse wiki communautaire pour collaborer sur une réponse plus large. N'hésitez pas à y ajouter plus de détails.