Inhaltsverzeichnis Vorwort... 11 Azure Cloud Computing mit Microsoft... 12 Danksagungen... 13 Kontakt zum Autor... 13 Einleitung... 15 Zielgruppe... 16 Aufbau... 16 Inhalt der einzelnen Kapitel... 17 Systemanforderungen... 18 Im Buch eingesetzte Versionen... 18 Anmerkungen zu den Beispielen... 19 Website zum Buch... 19 1 Cloud Computing mit der Microsoft-Plattform... 21 Microsofts Software plus Services-Strategie... 22 Evolution der IT... 22 Infrastrukturen für IT-Funktionen... 25 Cloud Computing... 26 Definition von Cloud Computing... 26 Bestandteile des Cloud Computing... 26 Alternative Ausprägungen von Cloud-Plattformen... 30 Vorteile des Cloud Computing... 31 Die Windows Azure Platform... 31 Cloud Computing mit Azure... 31 Einordnung von Azure in Microsofts Cloud-Plattform... 32 Einbettung von Azure in die Microsoft-Technologieplattform... 33 Auswirkungen auf die bestehende IT... 34 Azure und bestehende Anwendungen... 34 Entwicklung von Anwendungen für Azure... 35 Neue IT- und Geschäftsmodelle... 36 Möglichkeiten mit der Microsoft-Plattform... 36 Alternativen für die Softwareentwicklung... 36 Alternativen für den Softwarebetrieb... 38 Optimierung des IT-Portfolios... 41
6 Inhaltsverzeichnis Weiterentwicklungen der Microsoft-Plattform... 43 Bereitstellung einer Cloud-Plattform... 43 Unterstützung einer Vielzahl an Endgeräten... 43 Serviceorientierung der Anwendungsplattform... 44 Erweiterung der Entwicklungsumgebung... 44 Durchgängigkeit der Microsoft-Plattform... 44 Zusammenfassung... 45 2 Überblick über die Windows Azure Platform... 47 Die Windows Azure Platform... 48 Microsofts Plattform für die Cloud... 48 Möglichkeiten mit Azure... 49 Entwicklungsstand der Plattform... 51 Bestandteile der Plattform... 51 Global Foundation Services... 51 Windows Azure... 52 Azure Services... 54 Bedeutung der Plattform... 60 Azure für Unternehmen... 60 Azure für Endanwender... 62 Azure für Softwareentwickler... 62 Azure für Webentwickler und Webagenturen... 63 Azure für Systemintegratoren... 64 Azure für Unternehmensgründer... 65 Schrittweise Adaption von Azure... 65 Softwareentwicklung mit Azure... 66 Vorbereitung der Entwicklungsumgebung... 67 Azure Development Fabric... 68»Hello World«mit Azure... 68 Zusammenfassung... 82 3 Windows Azure Betriebssystem für die Cloud... 83 Überblick über Windows Azure... 84 Azure als Entwicklungsplattform... 84 Hosting mit Windows Azure... 85 Bestandteile von Windows Azure... 85 Virtualisierte Rechenleistung in der Cloud... 85 Speicherdienste... 87 Service Management... 95 Entwicklerwerkzeuge... 96 Eigene Anwendungen auf Windows Azure... 96 Webanwendungen auf Azure... 97 WCF-Services auf Azure... 108
Inhaltsverzeichnis 7 Datenspeicherung in Windows Azure... 116 Speicherung von Blobs... 116 Datenspeicherung in Tabellen... 122 Asynchrone Kommunikation mit Queues... 126 Zusammenfassung... 135 4 Personal Computing mit Live Services... 137 Überblick über Live Services... 138 Herausforderungen der digitalen Welt... 138 Live Services im Einzelnen... 139 Das Live Framework... 140 Live Operating Environment... 141 Ressourcenmodell... 142 Programmiermodell und Entwicklerwerkzeuge... 144 Entwicklung mit dem Live Framework... 145 Zugriffe auf das Mesh-Ressourcenmodell... 145 Zugriff auf das Live Operating Environment... 147 Auslesen von Live Framework-Ressourcen... 150 Ändern, Löschen und Anlegen eines Mesh-Objekts... 152 Empfang von Änderungen an Mesh-Objekten... 155 Entwicklung Mesh-fähiger Webanwendungen... 156 Mesh-Anwendungen mit JavaScript... 156 Mesh-Anwendungen mit Silverlight... 173 Zusammenfassung... 179 5 Integration mit.net Services... 181 Überblick über.net Services... 182 Integration verteilter Anwendungskomponenten... 182 Bereitstellung eines Internet Service Bus... 183 Zugriffskontrolle in verteilten Anwendungen... 184.NET Service Bus... 185 Naming und Discovery... 185 Nachrichtenaustausch über.net Services... 186 Fortgeschrittene Kommunikation mit Queues und Routern... 191.NET Access Control Service... 196 Claims-basierte Authentifizierung und Autorisierung... 196.NET Access Control als Claims-basiertes Identity-Modell... 199 Verwaltung des.net Access Control Service... 199 Entwicklung mit.net Services... 202 Das.NET Services SDK... 202 Eine erste Anwendung mit.net Services... 202 Kommunikation über den.net Service Bus... 213 Zugriffskontrolle über den.net Access Control Service... 234 Zusammenfassung... 241
8 Inhaltsverzeichnis 6 Datenspeicherung mit SQL Azure... 243 Überblick über SQL Azure... 244 Funktionalität von SQL Azure... 244 SQL Azure vs. Windows Azure Table Storage... 245 Architektur von SQL Azure... 245 SQL Azure Services im Einzelnen... 247 SQL Azure Database... 247 SQL Azure als Data Hub... 248 Zukünftige Dienste... 250 Anwendungsentwicklung mit SQL Azure... 250 Konfiguration von SQL Azure... 250 Datentransfer nach und aus SQL Azure... 258 Datenbankbasierte Anwendungen mit SQL Azure... 273 Skalierbarkeit von SQL Azure-Datenbanken... 285 Zusammenfassung... 288 7 Software plus Services-Lösungen mit Azure... 289 Softwarearchitekturen mit Azure... 290 Grundarchitektur einer Anwendung mit Azure... 290 Vorbereitung der Entwicklungsumgebung für die Beispiele... 291 Webanwendungen mit Azure... 292 Einfache Webanwendung auf Windows Azure... 293 Webanwendung mit Hintergrundverarbeitung... 294 Webanwendung mit parallelisierter Verarbeitungslogik... 294 Webanwendung mit relationalem Speicher... 295 Rich Internet Applications mit Azure... 296 Windows-Anwendungen mit Azure... 297 Erweiterung von Windows-Anwendungen um Cloud Services... 297 Nutzung des Windows Azure Storage... 298 Datenspeicherung in SQL Azure... 298 Datensynchronisation mit SQL Azure... 300 Anwendungsintegration über.net Services... 301 Mobile Anwendungen mit Azure... 301 Windows Mobile-Client für Azure Webservices... 302 Datenaustausch zwischen mobilen Endgeräten und Azure... 306 Office-basierte Anwendungen mit Azure... 307 Erweiterungen für die Office 2007-Multifunktionsleiste... 309 Aufgabenbereiche... 312 Cloud Services zur Befüllung von Excel-Tabellenzellen... 315 Zusammenfassung... 317
Inhaltsverzeichnis 9 8 Interoperabilität mit Azure... 319 Möglichkeiten der Interoperabilität mit Azure... 320 Azure mit Java... 322 Zugriff auf Azure über Standardschnittstellen... 323 Zugriff auf Windows Azure Storage aus einer Java-Anwendung... 327 Integration von Java-Webservices mit.net Services... 329 Ausführung von Java-Code auf Windows Azure... 330 Nutzung von SQL Azure... 332 Azure mit PHP... 334 Zugriff auf Azure Services... 335 Zugriff über das Windows Azure SDK für PHP... 335 Implementierungen mithilfe der Simple Cloud API... 336 Ausführung von PHP-Anwendungen auf Windows Azure... 337 Nutzung von SQL Azure... 340 Azure mit Ruby... 342 Integration von Ruby-Webservices mit.net Services... 342 Nutzung von SQL Azure... 343 Zusammenfassung... 343 9 Ausblick und Zusammenfassung... 345 Weiterentwicklungen der Plattform... 346 Windows Azure... 346 Live Services... 347.NET Services... 347 SQL Azure... 347 Informationsquellen im Netz... 348 Ressourcen zur Windows Azure Platform... 348 Ressourcen zu Global Foundation Services... 349 Werkzeuge für Entwickler... 349 Private Cloud Computing mit Microsoft... 350 Die Zukunft von Software plus Services... 351 Symmetrie zwischen Cloud Services und Serverprodukten... 351 Durchgängigkeit der Entwicklung und Administration... 351 Fazit... 352 Stichwortverzeichnis... 353