Beginners Guide – API-Entwicklung in der Microsoft-Welt (Teil 1): Architektur und Infrastruktur

post-thumb

Heutzutage ist das Spektrum an Technologien in der IT-Branche breit gefächert und sehr vielfältig. Als Berufseinsteiger ist es meistens schwierig sich zu orientieren und die eigenen Interessen zu erforschen. Während meiner Studienzeit habe ich einige Unternehmen kennengelernt, die auf unterschiedlichste Technologien aufbauen und eigene Philosophien entwickelt haben. Für manche dieser Unternehmen war die Cloud das „große Böse“ und jegliche Infrastruktur musste On-Premises, also in eigenen Server-Räumen betrieben werden. Ein langjähriger IT-Berater überraschte mich einst mit der Aussage „Wozu Cloud und wieso schreibt heutzutage noch jemand C#?“.

Die folgende Artikelserie ist deshalb an diejenigen gerichtet, die noch nie mit der Cloud in Berührung gekommen sind und einen kleinen Einblick in die Microsoft-Welt suchen. Gemeinsam werden wir die Infrastruktur für eine API in Microsoft Azure konfigurieren und diese für eine beliebige Frontend-Anwendung entwickeln und bereitstellen. Hierzu eine kleine Übersicht aller Kapitel der Artikelserie:

Beginners-Guide – API-Entwicklung in der Microsoft-Welt (Teil 1): Architektur und Infrastruktur

Beginners-Guide – API-Entwicklung in der Microsoft-Welt (Teil 2): .Net 5.0 Projektstruktur

Beginners-Guide – API-Entwicklung in der Microsoft-Welt (Teil 3): Entity Framework Migration

Beginners-Guide – API-Entwicklung in der Microsoft-Welt (Teil 4): Service and Controller

Damit ihr mitmachen könnt, registriert euch einfach hier mit einem kostenlosen Azure-Konto. Dabei erhaltet Ihr 170€-Guthaben und 1 Jahr Zugriff auf viele beliebte Dienste in Azure.

Die Architektur

Die Architektur für das Beispiel ist sehr simpel gehalten: Ein Nutzer bedient eine einfache Frontend-Anwendung, welche durch API-Aufrufe die benötigten Daten von unserer .NET 5.0-Anwendung erhält. Diese werden aus einer SQL-Datenbank in Azure bezogen und aufbereitet.

Architektur

Infrastruktur – Backend

Datenbank und Server können in Azure schnell erstellt und konfiguriert werden. Während man On-Premises noch Stunden mit Aufsetzen und Einrichten eines neuen Servers verbringen musste, können etliche Templates im Azure Marketplace ausgewählt und genutzt werden – wie bei der Installation einer App auf dem Smartphone. So ist man nur ein paar Mausklicks entfernt von einem fertig konfigurierten SQL-Server für unsere Datenbank.

Infrastruktur

Projektdetails

Nach wenigen Sekunden ist der Server provisioniert und einsatzbereit. Ein weiteres Template aus dem Marketplace lässt uns eine Datenbank auf dem Server erstellen. Wichtig hierbei ist die Konfiguration der Rechenleistung sowie Speicherkapazität, damit die Kosten in einem beschaulichen Rahmen bleiben. Als Standard wählt Microsoft hier eine dediziert bereitgestellte Instanz mit 32GB Arbeitsspeicher und mindestens 2 virtuellen Kernen zu einem stolzen Preis von ca. 240€ pro Monat aus. Für unsere Testanwendung brauchen wir jedoch keine solchen Kapazitäten und entscheiden uns für das DTU-basierte Kaufmodell. Die Abrechnung erfolgt dann basierend auf der Anzahl von Datenbanktransaktionseinheiten und kostet uns nur 5€ im Monat [2]. Dadurch sind die Kosten flexibel für den individuellen Gebrauch anpassbar – man bezahlt nur für das, was man auch verbraucht.

Weitere Projektdetails

Web-App

Damit unsere API später genutzt werden kann, benötigen wir eine Web-App. Durch die Templates bleibt uns auch hier dieser aufwendige Teil erspart und wir können mit wenigen Klicks eine Web-App erstellen. Da wir im weiteren Verlauf die API in .NET 5 entwickeln werden, wählen wir dieses als Runtimestapel aus und benutzen den kostenlosen F1-Tarif in unserem App Service-Plan. Auch hier wird wahlweise für intensiver genutzte Anwendungen mehr Rechenleistung über weitere Tarife angeboten.

Projektdetails gesamt

Infrastruktur – Frontend

Für das Frontend legen wir ein Speicherkonto an, in dem der kompilierte Code sowie zusätzliche Inhalte wie Bilder für die spätere Webseite gehostet werden. Bei lokal redundantem Speicher sind die Kosten vernachlässigbar, da pro GB nur ca. 0,07 Cent (kein Euro!) im Monat fällig werden. Den Preisrechner für Speicherverbrauch in Azure findet ihr unter [3]. Auch hier gilt wieder das Prinzip: Nur bezahlen, was man auch braucht.

Speicherkonto

Instanzdetails

Wie das Frontend nun veröffentlicht wird und was dazu noch konfiguriert werden muss, findet Ihr in Teil 5 dieser Artikelserie.

Fazit

In Microsoft Azure lässt sich in kürzester Zeit eine Infrastruktur über vorgefertigte Templates zusammen klicken. Wichtig hierbei ist es, die Kosten im Blick zu haben, um unnötige Gebühren zu vermeiden. Nun können wir direkt mit der Implementierung unserer API beginnen. Wie man am besten eine API aufbaut und wie einfach die Bereitstellung dieser ist, erfahrt ihr im zweiten Teil der Blogserie.

Lernen Sie uns kennen

Das sind wir

Wir sind ein Software-Unternehmen mit Hauptsitz in Karlsruhe und auf die Umsetzung von Digitalstrategien durch vernetzte Cloud-Anwendungen spezialisiert. Wir sind Microsoft-Partner und erweitern Standard-Anwendungen bei Bedarf – egal ob Modernisierung, Integration, Implementierung von CRM- oder ERP-Systemen, Cloud Security oder Identity- und Access-Management: Wir unterstützen Sie!

Mehr über uns

Der Objektkultur-Newsletter

Mit unserem Newsletter informieren wir Sie stets über die neuesten Blogbeiträge,
Webcasts und weiteren spannenden Themen rund um die Digitalisierung.

Newsletter abonnieren