it-swarm.com.de

Windows Azure oder Amazon EC2 für ASP.NET MVC-Entwicklung?

Wenn Sie ASP.NET-MVC-Anwendungen für Unternehmen erstellen möchten, die MSSQL-Datenbanken verwenden, sollten Sie Windows Azure oder Amazon EC2 verwenden.

Ich habe keine befriedigenden Antworten gefunden.

Was sind also die Vor- und Nachteile der beiden Cloud-Plattformen (Preis, Leistung, Einfachheit der Integration, ...)?

57
Ben

Beide sind für etwas unterschiedliche Zwecke - 

Amazon ist Infrastruktur als Service, was bedeutet, dass Sie keine Hardware, Netzwerkgeräte kaufen und warten müssen. Sie erhalten virtuelle Maschinen, die Linux oder Windows-Betriebssysteme hosten können, und Sie können problemlos beliebige Frameworks, Webserver oder Anwendungen installieren, die Sie für das Hosting von Web-Apps oder Web-Services oder für lange laufende Prozesse verwenden möchten. Sie sind weiterhin für die Wartung des Betriebssystems verantwortlich. Das bedeutet, dass Sie weiterhin Upgrade-Patches installieren, vor Viren schützen müssen und die volle Verantwortung dafür tragen, dass das Betriebssystem nicht abstürzt.

Windows Azure ist ein Plattform-as-a-Service. Grundsätzlich erhalten Sie Windows-VMs wie in Amazon. Die Betriebssystemverwaltung und das Anwendungsframework sind jedoch auch vollständig von Ihnen entfernt. Es ermöglicht automatische Betriebssystemaktualisierungen und -wartungen. Dies bedeutet auch, dass Sie Ihre App einfach laden und sie funktioniert - ohne dass Sie sich um die niedrigen Details kümmern müssen. 

Dies reduziert zwar die Kontrolle über das, was Sie installieren können, und was Sie nicht tun können, verringert den operativen Aufwand erheblich, da Sie für die Wartung Ihrer Instanzen keinen großen administrativen Aufwand benötigen. Auch das Skalieren nach oben und unten, der Lastausgleich und die automatische Betriebszeit werden vom Azure-Dienstcontroller (oder dem Fabric-Controller) übernommen. 

SQL Azure ist in dieser Richtung einen Schritt voraus - Sie müssen nicht einmal eine VM in Betracht ziehen, Sie erhalten nur eine bestimmte Größe in der Cloud und Sie zahlen für das, was Sie verwenden. Die Daten werden scheinbar dreifach repliziert, und daher ist eine sehr gute Zuverlässigkeit eingebaut. Es ist viel billiger, dies zumindest für kleinere Datenbanken zu haben, als eine vollständige Instanz für einen SQL-Server. 

MS führt auch einige Features wie Windows Server vms ein, die Ihnen eine Option für Amazon-ähnliche Instanzen geben, aber ich persönlich mag das aktuelle Azure besser.

Zusammenfassend lässt sich sagen: Für neue asp.net-mvc-Anwendungen ist Windows Azure mit SQL Server-Backend eine großartige Plattform, auf der man aufbauen kann. Wenn Sie jedoch über eine vorhandene Website verfügen, die stark von älteren Komponenten abhängt, die nicht von Windows Azure unterstützt werden, ist Amazon die bessere Wahl. Auch Amazon wird für eine Instanz gleicher Größe etwas günstiger sein (die Preisstrukturen können jedoch je nach der von Ihnen gewünschten Verpflichtung variieren). 

70
Roopesh Shenoy

Roopesh hat einige der Unterschiede gut beschrieben. Lassen Sie mich dies für Ihren speziellen Fall hinzufügen.

Da Sie Microsoft SQL Server verwenden möchten, ist Azure SQL Azure eine gute Wahl. Wenn Sie Ihre Anwendung in einer Azure-Webrolle bereitstellen (eine Rolle ist eine virtuelle Maschine mit einer bestimmten Vorlage und eine Webrolle, auf der speziell IIS ausgeführt wird), können Sie direkt mit Ihren SQL Azure-Datenbanken im selben Rechenzentrum arbeiten, ohne dass dies zu Lasten des Benutzers wird etwaige Bandbreitengebühren oder Internetlatenz zwischen Ihrer App und Ihrer Datenbank.

Eine Klarstellung: SQL Azure do dreifach replizieren Ihre Daten. Diese Replikation erfolgt sofort. Denken Sie also daran, wenn Sie * FROM Customers löschen, da diese Löschung auch dreifach repliziert wird. Berücksichtigen Sie dies bei der Planung Ihrer Sicherungsstrategie (Nutzen Sie möglicherweise den Azure-Synchronisierungsdienst, um in regelmäßigen Abständen eine Sicherungskopie in einer anderen Datenbank zu erstellen, entweder in Azure oder vor Ort).

18
David Makogon

Wir hosten derzeit unsere eigene App in einer privaten Cloud für unsere Kunden und migrieren sie derzeit als F & E-Projekt nach Azure.

Unser Produkt nutzt die Freitextsuche von MSSQL Server. Leider ist das nicht in Azure gelungen.

Ich denke, der Umstieg auf Azure macht es im Vergleich zu AWS schwieriger, zu einer anderen Plattform zu wechseln oder diese zu unterstützen. 

6
Sean

Ich habe festgestellt, dass SQL Azure langsam ist. Wenn Sie eine leistungsstarke Datenbanklösung benötigen, schauen Sie sich woanders um. SQL Azure scheint nur für Websites mit wenig Verkehr geeignet zu sein, die nicht viele Datenbankzugriffe durchführen. Wie andere bereits erwähnt haben, ist es aufgrund seiner einfachen Handhabung eine sehr bequeme Lösung, aber ...

2
Mark

Amazon sieht zwar aus Kostengesichtspunkten gut aus, aber die kostenlosen Instanzen sind nur Linux. Bei Fenstern sind die Kosten vergleichbar. Amazon-Rollen sind im Grunde VMs, Sie müssen den Rest der Box verwalten. VM -Rollen stehen jetzt in Azure zur Verfügung, wenn Sie das möchten, aber ich bevorzuge die Azure-Web-Rollen, da der Rest des Plattform-/Lastausgleichs für Sie erledigt ist. 

Wenn Sie MSDN abonnieren oder Microsoft-Partner werden (oder über Bizspark oder ein ähnliches Programm), können Sie kostenlos auf Azure-Ressourcen zugreifen: 

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

SQL Azure ist auch ein großer Vorteil von Azure, da es vollständig repliziert und verwaltet wird. Wenn Sie MSSQL auf Amazon möchten, können Sie es installieren, müssen es aber selbst verwalten. 

1
Doobi

Azure unterstützt derzeit VM nicht mit 2 oder mehr NICs

0
Indrajit Chavan

Microsoft fügt VM eine Rolle in Azure hinzu, sodass Azure die Iass-Option für EC2 hat. 

http://www.Microsoft.com/windowsazure/compute/default.aspx

0
Antonio Bakula