© Andrey Yurlov/shutterstock.com
Windows Developer
Long-Running-Workflows als Serverless Functions in Azure

Durchhaltevermögen


Azure Functions bringen viele Eigenschaften mit, die einem die Arbeit erleichtern. Für länger laufende Prozesse sind sie allerdings weniger gut geeignet. Hier helfen Durable und Entity Functions weiter.

Serverless Functions [1] sind aus meiner Sicht eine großartige Erweiterung von Microsoft Azure, die sich nicht umsonst zunehmend größerer Beliebtheit erfreut. Die Gründe: Man muss sich weder um die Auswahl der richtigen Anzahl und Größe von Servern kümmern noch um die Konfiguration des Autoscalings. Schon gar nicht ist man damit beschäftigt, virtuelle Maschinen aktuell zu halten. APIs in der Cloud kommen durch die Serverless-Technologie wie der sprichwörtliche Strom aus der Steckdose. Auch dort steckt eine gewaltige Ingenieursleistung dahinter, immer die richtige Menge Strom zum richtigen Zeitpunkt anzubieten. So ist es auch mit Serverless Functions. Man verpackt seinen Code, übergibt ihn Microsoft und lässt es deren Problem sein, die notwendige Infrastruktur für die gerade anstehende Last bereitzustellen. Nach dem sogenannten Consumption Plan zahlt der Nutzer für das, was er tatsächlich verbraucht, und die Kosten fallen sogar auf null, wenn gerade niemand die Cloud-Software nutzt [2].

Die zweite Besonderheit von Azure Functions ist das Programmiermodell: Es ist Event-getrieben. Events können dabei einerseits die üblichen HTTP Requests sein, falls das zu entwickelnde API ein Web-API sein soll. Es gibt aber auch eine große Anzahl anderer Events, auf die man reagieren kann [3]. Hier einige Beispiele:

  • Eine Datei wird auf den Blob Storage hochgeladen.

  • Eine Datenänderung geschieht in Cosmos DB.

  • Eine Nachricht kommt von einem IoT-Gerät.

  • Über den Service-Bus kommt eine Nachricht von einem anderen Microservice.

  • Ein Timer informiert darüber, dass ein eingestellter Zeitpunkt erreicht wurde.

Das Konzept von Azure Functions passt daher perfekt, wenn man eine Software in Form lose gekoppelter Microservices aufbauen möchte.

Wozu Durable Functions?

Die klassischen Azure Function...

Windows Developer
Long-Running-Workflows als Serverless Functions in Azure

Durchhaltevermögen

Azure Functions bringen viele Eigenschaften mit, die einem die Arbeit erleichtern. Für länger laufende Prozesse sind sie allerdings weniger gut geeignet. Hier helfen Durable und Entity Functions weiter.

Rainer Stropek


Azure Functions bringen viele Eigenschaften mit, die einem die Arbeit erleichtern. Für länger laufende Prozesse sind sie allerdings weniger gut geeignet. Hier helfen Durable und Entity Functions weiter.

Serverless Functions [1] sind aus meiner Sicht eine großartige Erweiterung von Microsoft Azure, die sich nicht umsonst zunehmend größerer Beliebtheit erfreut. Die Gründe: Man muss sich weder um die Auswahl der richtigen Anzahl und Größe von Servern kümmern noch um die Konfiguration des Autoscalings. Schon gar nicht ist man damit beschäftigt, virtuelle Maschinen aktuell zu halten. APIs in der Cloud kommen durch die Serverless-Technologie wie der sprichwörtliche Strom aus der Steckdose. Auch dort steckt eine gewaltige Ingenieursleistung dahinter, immer die richtige Menge Strom zum richtigen Zeitpunkt anzubieten. So ist es auch mit Serverless Functions. Man verpackt seinen Code, übergibt ihn Microsoft und lässt es deren Problem sein, die notwendige Infrastruktur für die gerade anstehende Last bereitzustellen. Nach dem sogenannten Consumption Plan zahlt der Nutzer für das, was er tatsächlich verbraucht, und die Kosten fallen sogar auf null, wenn gerade niemand die Cloud-Software nutzt [2].

Die zweite Besonderheit von Azure Functions ist das Programmiermodell: Es ist Event-getrieben. Events können dabei einerseits die üblichen HTTP Requests sein, falls das zu entwickelnde API ein Web-API sein soll. Es gibt aber auch eine große Anzahl anderer Events, auf die man reagieren kann [3]. Hier einige Beispiele:

  • Eine Datei wird auf den Blob Storage hochgeladen.

  • Eine Datenänderung geschieht in Cosmos DB.

  • Eine Nachricht kommt von einem IoT-Gerät.

  • Über den Service-Bus kommt eine Nachricht von einem anderen Microservice.

  • Ein Timer informiert darüber, dass ein eingestellter Zeitpunkt erreicht wurde.

Das Konzept von Azure Functions passt daher perfekt, wenn man eine Software in Form lose gekoppelter Microservices aufbauen möchte.

Wozu Durable Functions?

Die klassischen Azure Function...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang