Cloud Computing Tipps
Photo by Samuel Zeller on Unsplash
Photo by Samuel Zeller on Unsplash

Gastartikel - Pierre-Yves Ritschard, Exoscale

Entwickler profitieren von der Cloud

Im Gegensatz zu den Ressourcen im eigenen Rechenzentrum, sind diese in der Cloud skalierbarer. Damit kann die Unternehmens-IT zeitnah auf die sich ändernden Bedürfnisse der eigenen Mitarbeiter und des Geschäftsverlaufs reagieren. Das gilt insbesondere für Entwickler, die auf einer flexiblen Plattform ihre Anwendungen erstellen. Doch gibt es hier einige Faktoren zu beachten, die die Architektur, die auf der Cloud ausgeführten Code oder den laufenden Betrieb betreffen.

Skalierbarkeit

Die Skalierung der Cloud kann dreifach verstanden werden. Bei der vertikalen Skalierung werden die Ressourcen in der Cloud erweitert. So erhält der virtuelle Server mehr Arbeitsspeicher, CPU-Leistung oder virtuellen Festplattenplatz. Da hier nur Systemkomponenten hinzugefügt werden, ist dieser Ansatz einfach durchzuführen und die Administration bleibt unverändert. Eine vertikale Skalierung bietet sich beispielsweise beim Einsatz von relationalen Datenbanksystemen an. Dem gegenüber steht das Prinzip der horizontalen Skalierung. Bei ihr bleibt die Charakteristik des virtuellen Servers unangetastet. Es wird lediglich eine zweite Instanz hinzugefügt. Anwendungsbeispiel dafür wäre der Betrieb eines oder mehrerer Webserver. Da hier mehrere Server miteinander interagieren müssen, wird in diesem Fall die Administration komplexer. Um die Arbeitslast zwischen den virtuellen Servern möglichst effektiv zu verteilen, ist der Einsatz eines Load Balancers notwendig. Weiter gibt es eine Mischform zwischen horizontaler und vertikaler Skalierung, den diagonalen Ansatz. Er erweitert zunächst die Kapazitäten eines virtuellen Servers und fügt erst danach weitere hinzu. Die horizontale Skalierung spart einigen Verwaltungsaufwand, da durch die Leistungserweiterung der virtuellen Server die Anzahl der Instanzen insgesamt möglichst niedrig gehalten wird.

Ende des Mooreschen Gesetzes

Steht einem ein ständig erweiterbarer Pool an Ressourcen zur Verfügung, mag es nicht so wichtig erscheinen, sparsam zu entwickeln. Das Mooresche Gesetz hat in der Vergangenheit zu einem exponentiell wachsenden IT-Ressourcenreichtum geführt. Es besagt, dass sich bei minimalen Kosten die Komplexität integrierter Schaltkreise alle 12 bis 24 Monate verdoppelt. Jedoch ging der Schöpfer dieser Regel, Gordon Moore, davon aus, dass sich dieser Mechanismus lediglich auf die Anzahl der Schaltkreiskomponenten bezog. Mittlerweile hat sich die zeitliche Skala, in der von einer Verdoppelung gesprochen werden kann, etwas verlängert. So unterscheidet sich ein heutiges Notebook nicht mehr in dem Ausmaß von seinem drei Jahre alten Gegenstück, als dies noch vor zehn Jahren der Fall gewesen wäre. Der Hauptunterschied zwischen den zwei Modellen liegt eher bei anderen Faktoren, wie etwa Display, Energiebedarf oder die Anzahl der im Rechner verbauten Kerne.

Threading wird prominenter

Letzteres führt mit sich, dass das Thema Threading bei der Entwicklung von Anwendungen immer prominenter wird. Plattformen wie Java unterstützen bereits Multithreading und bieten ebenso Funktionen, die für ein sicheres Threading sorgen. Dieser Bereich ist keinesfalls neu und gut dokumentiert. Der Ansatz für die Programmierung ist dabei nicht so komplex und bedarf vieler Prozesse. Das führt dazu, dass nicht mehr ausschließlich der vertikale Skalierungsansatz tonangebend ist, sondern auch andere Skalierungsmodelle wie die horizontale in Frage kommen. Voraussetzung dafür sind Entwicklungsumgebungen, die ihre Ressourcen maschinenübergreifend nutzen können. Dies ist besonders in Cloud-Umgebungen gegeben. Sie bietet eine programmierbare, anpassbare Umgebung. Damit kann der Entwickler die für ihn wichtigen Ressourcen auswählen und auch nur für die in Anspruch genommene Leistung bezahlen. Technisch umgesetzt wird die Bereitstellung der jeweils nötigen Infrastruktur vom Cloud-Anbieter.

Die Vorteile der Entwicklung von Anwendungen auf einem Cloud-Server sind evident: Die Anschaffung einer eigenen Entwicklungsplattform entfällt zur Gänze. Das für die Entwicklungsumgebung veranschlagte Budget kann so zielgerichteter dem Projekt zugeordnet werden.

Entwickler konzentrieren sich auf Kernaufgaben

Die Entwickler sind somit von allgemeinen Verwaltungs- und Infrastrukturaufgaben befreit und können sich ihren Kernaufgaben widmen. Bei Nutzung eigener IT-Ressourcen wären Entwickler zusätzlich für die Wartung der Entwicklungsserver verantwortlich – einschließlich einem vierundzwanzigstündigen Notdienst.

Um die Leistungsfähigkeit einer Anwendung zu optimieren und ihr Laufzeitverhalten vollends zu verstehen, reicht ein hervorragendes Standard-Monitoring nicht mehr aus. Zusätzlich müssten entsprechende Monitoring-Funktionen direkt in die Applikation eingebettet werden. Beispielsweise ist dort, wo Informationen in Reihung abgearbeitet werden, wichtig zu wissen, welche davon weiterverarbeitet werden und bei welchen das nicht der Fall ist. Mit einem internen Applikations-Monitoring können Entwickler etwaige Fehler schnell und ressourcenschonend finden und beheben – ohne große Mengen an Daten analysieren zu müssen. Hierzu existiert eine Vielfalt an Softwarewerkzeugen, die diese Herangehensweise unterstützen.

Ein Beispiel für ein solches Werkzeug ist Prometheus. Es fertigt Prozesslandkarten und Prozessdiagramme an und ist ebenfalls als Cloud-Lösung verfügbar. Durch die Hinzuziehung von Prozesslandkarten und -diagramme können Entwickler die Defizite in den Anwendungen eliminieren, Laufzeiten beschleunigen und somit budgetsparend agieren. Weiter steigert ihre Nutzung die Gesamteffizienz nachhaltig, etwa indem durch Add-Ons weitere Funktionen bereitgestellt werden. Dadurch kann der Code der Anwendungen schlanker und effizienter ausfallen. Ebenfalls dient die Strukturprotokollierung einem detaillierteren Einblick in die Auswirkungen der Arbeitsweise der Anwendungen.

Gerade Cloud-Ressourcen führen zur effizienteren und flexibleren Entwicklungsarbeit. Die Skalierbarkeit und die genauere Abrechenbarkeit sowohl der einzelnen Entwicklungsschritte als auch des gesamten Entwicklungsprozesses erleichtern damit die Budgetierung von Softwareprojekten bei weitem. 

Pierre-Yves Ritschard ist CTO des eropäischen Cloud-Hosting-Anbieters Exoscale.

Weitere Artikel

Digitale Zwillinge werden Realität

PLM-Systeme liefern historische Daten, auf Basis derer ein…

Weiterlesen

KI in Forschung und Entwicklung

Egal, in welcher Branche man sich umhört – der Einsatz…

Weiterlesen
 © BRZ_Klaus Vyhnalek

„Blick aus User-Sicht ist entscheidend“

Das BRZ ist ein wichtiger Partner in der weiteren…

Weiterlesen

Die Zukunft aller Digitalisierungsprojekte

Der digitale Zwilling ist der Grundpfeiler aller…

Weiterlesen
Credit: SEPPmail-Deutschland

Land Oberösterreich setzt auf E-Mail-Verschlüsselung von SEPPmail

Die E-Mail ist im Verwaltungsalltag in Organisationen und…

Weiterlesen
Credit: Jana Krippel

Mehr als ein Jahr DSGVO: Ist der Sturm vorübergezogen?

Die Einführung der neuen DSGVO-Richtlinien vor etwas mehr…

Weiterlesen
Credit: Michael Dürr

„Es kann jedem passieren“

Markus Endres und Aleksandar Lacarak, Mitbegründer des…

Weiterlesen
Credit: Syngroup

Digitaler Schub

Die digitale Transformation benötigt in vielen Bereichen…

Weiterlesen
Grafik: Verlag Holzhausen GmbH

Integration der Zeitschrift "Monitor" in "Austria Innovativ"

Nach reiflicher Überlegung haben wir uns entschlossen, die…

Weiterlesen
Credit: Schulamt St. Pölten

Selfservice statt Zettelwirtschaft

Mit einer neuen Softwarelösung hat das Diözesan-Schulamt St.…

Weiterlesen
Credit: Fotalia

Die sichere Datenwolke

Die Cloud bietet viele Vorteile wie höhere Flexibilität zu…

Weiterlesen
Credit: A1 Digital

Über die technologische Seite hinaus denken

Die Digitalisierung nimmt in Österreich an Fahrt auf, weiß…

Weiterlesen
Foto: Universität Innsbruck

ERP Future Business 2019

Auf der Fachmesse stellen die teilnehmenden Anbieter von…

Weiterlesen
Bild: Eva Puella Photography

Markus Neumayr ab 2019 alleiniger Geschäftsführer

Zwanzig Jahre lang standen Firmengründer Univ.-Doz. Dr.…

Weiterlesen
Bild: UBIT

IKT Statusreport #4 zeigt akuten Handlungsbedarf

Konkrete Maßnahmen bei Informatikstudierenden und…

Weiterlesen
Bild: IGEL

Never change a winning team

Bei den Kursen des ICGEB in Triest kommen Studenten aus den…

Weiterlesen
Bild: NTT Security

5 Schritte für hohe Datensicherheit in der Cloud

Die Verlagerung von Geschäftsprozessen und Applikationen in…

Weiterlesen
Bild: CyberArk

DevOps-Risiken werden unterschätzt

Unternehmen nutzen verstärkt DevOps-Modelle für die…

Weiterlesen
Bild: presono/Anzhelika Kroiss

Ex-Microsoft Manager Keller wechselt zu presono

Lukas Keller geht als als neuer CEO zum 2015 in Linz…

Weiterlesen
Bild: Otago

Otago expandiert weiter

Bei der Wiener Online Consulting Agentur Otago stehen auch…

Weiterlesen