Was ist Azure Static Web Apps?
An der Microsoft Build 2020 hat Microsoft seinen neuen Dienst Azure Static Web Apps vorgestellt.
Auch wenn die Bezeichnung Static Web Apps zunächst etwas kurios wirkt, geht es durchaus um dynamische Anwendungen - jedoch vor allem um das statische Ausliefern solcher Web Apps, wie sie zum Beispiel Angular, React oder andere Single Page und Progressive Web Apps darstellen.
Azure Static Web Apps
Es war schon sehr sehr lange möglich statische JavaScript Applikationen zum Beispiel mit Hilfe des Blobstorages sehr sehr günstig statisch auszuliefern; doch hatte dies durchaus auch einige Nachteile und Hoster wie ZeitHQ waren hier immer etwas besser.
Dies sollen die Azure Static Web Apps nun besser machen.
Globally
Jede Applikation ist by default global verteilt. So ist der Content so nah wie möglich am Benutzer und die Zugriffszeiten entsprechend performant.
Azure Function Context
Im Prinzip laufen die Azure Static Web Apps in einem normalen Web Kontext wie ähnliche Azure Services und haben dementsprechend auch die Vorteile dieser. Die Besonderheit von Azure Static Web Apps ist hier nun nicht nur das Ausliefern von statischen Content, sondern eben, dass es im Azure Function Context betrieben werden - und damit dynamische, serverless APIs ebenfalls ausgeliefert werden können.
Deployment Slots
Wenn man statischen Inhalt ausgeliefert hat - über den Blobstorage in Azure - hat man keinerlei Möglichkeit Deployment Slots zu konfigurieren. Es gab daher immer die theoretische Möglichkeit von Race Conditions, dass sich statische Ressource A bei einem Request schon aktualisiert hat und respektive Ressource B nicht.
Mit Hilfe der Azure Static Web Apps ist dies nun möglich, sodass keinerlei Ausfallzeiten bei einem Applikationsupdate erfolgen.
ASP.NET Blazor
Neu ist ja auch ASP.NET Blazer - eine Single Page Application auf Basis von .NET und durch WebAssembly vollständig ausgeführt im Browser des Clients. Auch diese Applikation gilt als statisch und kann daher auf Azure Static Web Apps sehr günstig und einfach betrieben werden.
Die Preise
Die Azure Static Web Apps befinden sich derzeit noch im Preview - und währenddessen kann man beliebig kostenlos testen.
Ein Pricing erfolgt sobald die Preview-Phase verlassen wird. In der Regel bekommt man mindestens 30 Tage vor der Umstellung per E-Mail bescheid.
Aktuell ist es auch so, dass SSL Zertifikate kostenlos dabei sind. Ob dies nach der Preview so weiter bleibt ist noch unbekannt.
Fazit
Azure Static Web Apps ist die einfachste, schnellste und günstigste Möglichkeit statische Anwendungen wie Angular, React und ASP.NET Blazor auf Azure zu betreiben - und das auch noch mit der einmaligen Möglichkeit im gleichen Kontext Serverless APIs zu betreiben.
Bereits während einer internen Testphase hatte ich die Möglichkeit dies zu testen: und ich bin begeistert.
Ich kann Azure Static Web Apps wirklich empfehlen!