Cloud-Programmierung: Go SDKs für Azure und AWS

Während Microsoft die generelle Verfügbarkeit für das Azure SDK für Go bekannt gibt, erhält die Developer Preview des AWS SDK für Go 2.0 neue Marshaler zur beschleunigten Verarbeitung der restjson- und restxml-Protokolle.

In Pocket speichern vorlesen Druckansicht
Cloud-Programmierung: Go SDKs für Azure und AWS
Lesezeit: 2 Min.

Die ursprünglich von Google entwickelte und inzwischen von einer Community weiterentwickelte Open-Source-Sprache Go hat sich vor allem durch ihren Einsatz in Container-Techniken wie Docker und Kubernetes einen festen Platz in der Cloud erobert. Nach Abschluss der Betaphase und mit der Bekanntgabe der General Availability (GA) des Azure SDK für Go steht Entwicklern das Potenzial von Go auch für die App-Programmierung in der Microsoft Cloud offiziell in vollem Umfang zur Verfügung.

In der aktuellen Version 14 ist das SDK kompatibel mit den Go-Releases 1.8, 1.9 und 1.10. Mithilfe des SDK können Entwickler beispielsweise Azure-Datenbanken wie Cosmos DB anbinden, den Object Storage Service Azure Blob Storage einsetzen, die Authentifizierung von Nutzern regeln oder auch Azure-Ressourcen verwalten. Für erste Schritte mit dem Azure SDK für Go stehen auf GitHub Testbeispiele bereit, im Azure Go Dev Center finden Entwickler zudem Tutorials und eine detaillierte Dokumentation.

Amazon Web Services (AWS) hatte sich zuletzt den Problemzonen Service-Client-Konfiguration und API-Aufrufe in der Developer Preview des AWS SDK für Go 2.0 gewidmet, bei dem sich die Versionsnummer nicht auf die Programmiersprache, sondern auf das SDK bezieht. Nun reagieren die Betreiber der Cloud-Plattform auf Kundenanfragen und Performanceprobleme im Zusammenhang mit den restjson- und restxml-Protokollen. Wie Untersuchungen mit Hilfe des Benchmark Toolings von Go zeigen, verursacht vornehmlich das Reflection Package die auftretenden Verzögerungen. Um das Package umgehen zu können, implementiert AWS neue Marshaler für restjson und restxml, sodass die Werte nun direkt in der Query dem Header oder Body von Requests gesetzt werden können. (map)