57 votes

Développement Windows Azure ou Amazon EC2 pour ASP.NET MVC?

Si vous souhaitez créer des applications ASP.NET MVC d'entreprise utilisant des bases de données MSSQL, est-il préférable d'utiliser Windows Azure ou Amazon EC2?

Je n'ai trouvé aucune réponse satisfaisante.

Quels sont donc les avantages et les inconvénients des deux plates-formes cloud (prix, performance, simplicité d'intégration, ...)?

70voto

Roopesh Shenoy Points 2377

Les deux sont fins légèrement différentes -

Amazon est l'infrastructure en tant que service, ce qui signifie que vous n'avez pas à acheter hardwrae, l'équipement de réseau et de les maintenir. Vous obtiendrez machines virtuelles qui peuvent hôte linux ou OS de windows et peut facilement installer n'importe quel cadre, serveur web ou les applications que vous voulez utiliser pour l'hébergement des applications web ou des web services ou long processus en cours d'exécution. Vous êtes toujours responsable de maintenir le système d'exploitation qui signifie que vous devez toujours appliquer les correctifs de mise à niveau, protection contre les virus, et êtes entièrement responsable de s'assurer que l'OS ne se bloque pas.

Windows azure est une plateforme en tant que service, vous obtiendrez des machines virtuelles windows comme sur Amazon, mais le système d'exploitation de gestion et le cadre d'application est également complètement abstraction loin de vous. Il permet de calculer les OS, les mises à niveau et d'entretien. En outre, cela signifie que vous venez de charger votre application et il commence à travailler - pas besoin de vous soucier des détails de bas niveau.

Tout cela réduit le contrôle que vous avez sur ce que vous pouvez installer et ce que vous ne pouvez pas, il vous donne beaucoup moindre frais généraux de fonctionnement puisque vous n'avez pas besoin de beaucoup d'effort administratif dans le maintien de vos instances. Également mise à l'échelle en haut et en bas, l'équilibrage de la charge, de l'auto de haute disponibilité, tous ces éléments sont manipulés par l'azur de contrôleur de service (ou le tissu contrôleur).

Sql azure est un pas en avant dans cette direction - vous n'avez même envisager une VM, vous obtenez juste un particulier de la taille de la db dans le cloud, et vous payez pour ce que vous utilisez. Les données sont apparemment triple répliqué et il y a donc une très bonne fiabilité du construit en. Il est beaucoup moins cher d'avoir cela au moins pour les petites bases de données que d'avoir une véritable instance de sql server.

MS est également l'introduction de certaines fonctionnalités telles que windows server vm qui va vous donner une option pour avoir amazon comme cas, mais personnellement, j'aime bien l'actuel azure mieux.

Donc, pour résumer - pour les nouveaux asp.net les applications mvc, sql serveur backend, windows azure est une excellente plate-forme pour construire sur. D'autre part, si vous avez un site web qui a beaucoup de dépendance à l'égard de l'héritage des composants qui ne sont pas pris en charge par windows azure, amazon sera un bien meilleur choix. Aussi Amazon sera un peu moins cher pour une instance de la même taille (bien que les structures de prix peut varier en fonction de l'engagement que vous voulez donner).

18voto

David Makogon Points 28933

Roopesh a donné une bonne description de certaines des différences. Permettez-moi d'ajouter, pour votre cas spécifique.

Puisque vous souhaitez utiliser Microsoft SQL Server Azure SQL Azure va être un bon ajustement. De plus, si vous déployez votre application dans un Azure Web de Rôle (un rôle est une machine virtuelle avec un modèle spécifique, et un rôle web spécifiquement exécute IIS), vous pouvez travailler directement avec vos bases de données SQL Azure dans le même centre de données sans engager de frais de bande passante Internet ou temps de latence entre votre application et de votre base de données.

Une précision: SQL Azure n'est triple répliquer vos données. Cette réplication est instantanée, donc gardez cela à l'esprit lorsque vous DELETE * from CLIENTS, que cette suppression est également triple répliqué. En tenir compte lors de la planification de votre stratégie de sauvegarde (peut-être prendre avantage de Azure service de synchronisation de sauvegarder régulièrement à une autre base de données, soit dans Azure ou sur site).

6voto

Sean Points 31

Nous hébergeons actuellement notre propre application sur un cloud privé pour nos clients et nous la migrons actuellement vers Azure en tant que projet de recherche et développement.

Notre produit utilise la fonctionnalité de recherche de texte libre de MSSQL Server. Malheureusement, cela n'a pas été fait dans Azure.

Je pense que la migration vers Azure rendra plus difficile, par rapport à AWS, de basculer vers ou de prendre en charge toute autre plate-forme en aval.

2voto

Mark Points 103

J'ai trouvé SQL Azure lent. Si vous avez besoin d'une solution de base de données hautes performances, cherchez ailleurs. SQL Azure semble ne convenir qu'aux sites à faible trafic qui ne font pas beaucoup d'accès à la base de données. Comme d'autres l'ont souligné, c'est une solution très pratique en raison de sa facilité d'utilisation, mais ...

1voto

Doobi Points 4203

Tandis qu'Amazon semble bon à partir d'un point de vue des coûts, de leurs instances gratuites sont seulement sur linux. Pour windows coûts sont comparables. Amazon rôles sont essentiellement des machines virtuelles, vous devez gérer le reste de la boîte. Alors que VM les rôles sont maintenant disponibles sur azure si vous voulez, je préfère utiliser les Azure Web des rôles que le reste de la plate-forme/d'équilibrage de la charge est tous pris en charge pour vous.

Si vous êtes abonné à MSDN ou devenir un partenaire de Microsoft (ou via Bizspark ou un programme similaire), vous pouvez obtenir l'accès à des ressources azure gratuitement:

http://www.microsoft.com/windowsazure/offers/default.aspx

SQL Azure est aussi un gros avantage avec Azure - il est entièrement répliqué et gérés. Si vous voulez MSSQL sur Amazon, vous pouvez l'installer, mais vous devez gérer vous-même.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X