COMPAREX AG
5 Stolperfallen beim Entwickeln in der Cloud (Header)

Besser Entwickeln mit der Cloud: So umgehen Sie die 5 größten Stolperfallen!

Schneller, einfacher, günstiger. Wir sind uns sicher: Die Cloud macht Software-Entwicklung um so vieles besser. Ein- und Umsteiger müssen allerdings ein wenig um- und mitdenken, damit die Cloud nicht zur Stolperfalle wird. Wir verraten Ihnen die grundlegendsten Tipps und Tricks, wie Sie die Cloud sicher sinnvoll einsetzen.

Ein Beitrag von Andreas Gräfe, Teamleiter Software-Entwicklung

Die Entwicklung von Software hat sich schon immer verändert und weiterentwickelt – von den mechanischen Anfängen über die prozedurale und dann objektorientierte Programmierung bis zur serviceorientierten Programmierung. Immer war es das Ziel, mehr durch weniger zu erreichen - mehr Leistung, mehr Komfort, mehr Prozessunterstützung durch weniger (eigenen) Quellcode. Auf dem Weg gab es viele Meilensteine – Wiederverwendung von Prozeduren, später Klassen, dann Komponenten und vor kurzer Zeit Services.

Und heute? Heute leben wir im Zeitalter der Cloud, einem Partner für die moderne und zukünftige Softwareentwicklung. Wie aber jede vorherige Epoche ihre eigenen Herausforderungen mitbrachte, sind auch heute umfassende Kenntnisse notwendig, um mit der Cloud wirklich optimale und kostengünstige Software zu erstellen. Was sind die größten Stolperfallen? Im Folgenden verraten wir Ihnen, wie Sie die Cloud richtig nutzen.

# 1 – Die richtige Serviceschicht macht's

Je umfangreicher ein Werkzeugkoffer ist, desto mehr sollte man wissen, welches Werkzeug für welche Aufgabe einzusetzen ist. Bei der Cloud ist dies nicht anders. Es gibt Infrastrukturen (IaaS), Plattformen (PaaS) und Softwarelösungen (SaaS), welche als Dienst (* as a Service) konsumiert und genutzt werden können. Bedenken Sie vorab genau, was Sie benötigen.

Manchmal reicht es aus, den lokalen Server in der Cloud abzubilden, sei es die Datenbank, einen AD-Controller oder eine eigene Lösung auf einer virtuellen Maschine (VM). Diese Art ist recht grob, weil fast kein Mehrwert dabei vorhanden ist. Sie müssen sich weiterhin um das Betriebssystem, die Patches, Backups, etc. kümmern.

Mehr Vorteile bieten da schon die Plattformdienste. Hierbei werden kleinere und spezialisierte Dienste angeboten. Zu finden sind z.B. hochspezialisierte Datenbanksysteme, Dienste zum Verbinden und Kommunizieren von verteilten und hochverfügbaren Systemen oder Dienste aus dem Bereich Internet of Things (IoT). Azure bietet weit über 100 dieser Plattformdienste an und stetig kommen weitere hinzu.

Prüfen Sie vor der Wahl also genau, welche Anforderungen Sie an den gewünschten Dienst haben und wählen Sie den am besten passenden. So erreichen Sie eine optimale Unterstützung und können sich rein auf die Realisierung der Software konzentrieren.

# 2 – Denken Sie Cloud-orientiert

In der lokalen Welt (On-Premises) gibt es nach der Anschaffung von Hardware und Software fast keinen Grund mehr, auf diese zu verzichten, sprich sie nicht zu nutzen. Die Kosten dafür wurden schon beglichen und der Betrieb fällt nicht mehr so ins Gewicht. Anders ist dies bei Cloud-Diensten. Hier gibt es keine Anschaffungskosten. Gezahlt wird nur für das, was Sie verbrauchen und dies bis zu einer minutengenauen Abrechnung.

Wenn Sie die Kosten von eigener Anschaffung und Betrieb mit der Nutzung von Cloud-Diensten vergleichen, könnte das Gefühl aufkommen, dass diese teurer sind. Dies ist aber nur auf den ersten Blick so. Wie schnell können Sie z.B. ein System zum Betreiben von Live-Videos aufbauen und was wäre dazu alles nötig? Für weniger als 10 Euro können Sie durch die Nutzung der Azure Media Services bis zu zwei Stunden Live-Video anbieten und das gesamte Backend inkl. Ausfallsicherheit stellt Azure bereit.

Versuchen Sie doch einmal den Aufwand mittels virtueller Maschinen, der notwendigen Software und dem Betrieb auszurechnen. So verhält es sich mit fast jeder Art von Diensten. Achten Sie immer auf die Kernanforderungen und suchen Sie anhand dieser den optimalen Dienst.

# 3 – Always on, muss das immer sein?

Die Cloud ist immer vorhanden. An so etwas gewöhnt man sich schnell. Muss dies aber auch bei allen Diensten so sein, die Sie in Ihren Systemen verwenden? Da gibt es sicher einige, die wiederkehrende oder zeitlich begrenzte Aufgaben erledigen. Denken Sie beim Einsatz solcher Services nach, ob diese immer verfügbar und aktiv sein müssen. Durch das pay-as-you-use Modell der Cloud können Sie hier bares Geld sparen. Mit etwas Intelligenz in Ihrer Softwarelösung können Sie nicht genutzte Dienste in den Schlafmodus versetzen und bei Bedarf wiedererwecken lassen. Diese Art der Ressourcenkontrolle sollte immer im Auge behalten werden.

Hier ein kurzes Beispiel zum besseren Verständnis. Sie haben eine Software erstellt, welche komplexe Operationen auf großen Datenmengen einer SQL Datenbank vornehmen muss. Dazu nutzen Sie Azure SQL in der Edition Premium P15. Pro Stunde fallen hier 25,30 Euro an. Für die Bearbeitung werden 2 Stunden benötigt und diese muss jeden Freitag durchgeführt werden. Bei vier Freitagen im Monat kommt man somit auf 4 Freitage * 2 Stunden * 25,30 Euro = 202,40 Euro. Würde die Azure SQL-Datenbank nun aber den gesamten Monat durchlaufen, verursacht dies Kosten in Höhe von ca. 16.000 Euro. Durch ein wenig Intelligenz in der Softwarelösung lässt sich somit viel Geld einsparen, ohne an Leistung einbüßen zu müssen - dank der Azure Plattformdienste.

# 4 – Achten Sie auf die benötigten Funktionen

Prüfen Sie vor dem Einsatz von Diensten immer dessen Funktionsumfang. Nicht immer ist bei Namensähnlichkeit eine 100%ige Deckung der Funktionen zu erwarten. Als Beispiel sei hier wieder Azure SQL genannt. Man kann jetzt vermuten, dass es sich um den bekannten Microsoft SQL Server handelt, der in der Cloud auf Azure betrieben wird. Dem ist aber nicht so. Beide haben eine sehr große Ähnlichkeit, sind aber nicht identisch. Microsoft stellt die Unterschiede auf einer Webseite zum Vergleich zur Verfügung. Prüfen Sie also immer vor dem Einsatz, was Sie benötigen und was Sie erwarten können.

# 5 – Vergleichen Sie nicht Äpfel mit Birnen

Bei einem oberflächlichen Vergleich von lokalen Systemen mit Clouddiensten kann man schnell auf die Idee kommen, dass die Performance in der Cloud zu wünschen übrig lässt. Dies aber nur auf den ersten Blick. Versuchen Sie einmal eine Umgebung aufzubauen, die Hochverfügbarkeit, Georedundanz, vielfach permanentes Backup und Mandantenfähigkeit unterstützt. Und das alles zu einem bezahlbaren Preis und mit einem Schieberegler einstellbar.

Denken Sie immer daran, was Ihnen alles im Hintergrund noch geboten wird. Auch dies fordert Performance und läuft in Summe viel schneller als auf selbst eingerichteten Umgebungen mit all diesen Zusätzen. Trotzdem ist es möglich, die Mehrwehrte zu deaktivieren oder durch geeignete Wahl von Editionen abzuwählen. So gibt es beispielsweise bei Azure SQL verschiedene Editionen für alle Anforderungen, wie eine einfache Datenbank, hohe EA-Anforderungen und maximale Leistung in allen Bereichen.

Ein Plädoyer für die Entwicklung in der Cloud

Mit diesen Informationen sollte der Start gelingen. Packen Sie Ihren Werkzeugkasten um und rüsten Sie mit den hochpräzisen Werkzeugen aus der Cloud auf. Bei richtiger Auswahl und einem entsprechenden Einsatz der Dienste können Sie hochwertige und intelligente Software erstellen und das alles in wirklich kurzer Zeit.

COMPAREX hilft Ihnen bei der richtigen Auswahl der Cloud – mit Azure Adapt!

Wir schaffen gemeinsam mit Ihnen entsprechend Ihres Budgets und Ihrer Rahmenbedingungen die für Sie passende Cloud.

Holen Sie sich unsere Unterstützung!

Diesen Artikel teilen

Artikel vom:
29.08.2017

geschrieben von:

TAGS:
Cloud, Entwicklung

Thema:

Kommentieren sie diesen Artikel...

© COMPAREX AG
Zurück nach oben