Nun auf der Basis von Go: Infinite Scale Neue Owncloud-Plattform als Tech Preview

Autor / Redakteur: Dr. Dietmar Müller / Elke Witmer-Goßner

Collaboration-Spezialist Owncloud hat seine neue Plattform „Infinite Scale“ als Tech Preview veröffentlicht. Sie setzt auf eine Microservices-Architektur und die Programmiersprache Go.

Firmen zum Thema

Collaboration-Spezialist ownCloud hat seine neue Plattform „Infinite Scale“ als Tech Preview veröffentlicht.
Collaboration-Spezialist ownCloud hat seine neue Plattform „Infinite Scale“ als Tech Preview veröffentlicht.
(Bild: gemeinfrei© Faizal Sugi / Pixabay )

Trotz zahlreicher Verbesserungen an der Performance ist die Skriptsprache PHP den Anforderungen von Owncloud nicht mehr gewachsen gewesen: „Im Laufe der Zeit ist PHP durch zahlreiche Anpassungen, etwa die Objektorientierung, den einheitlichen Zugriff auf Datenbanken, einen integrierten Webserver oder eine bessere Speicherverwaltung immer leistungsfähiger geworden“, heißt es. Auf Basis von Go hat das Unternehmen die Dateiaustauschplattform nun von Grund auf neu entwickelt.

Aus den bisherigen Erfahrungen mit Go hat Owncloud eine Liste der größten Vorteile zusammengestellt:

  • Cross-Plattform: Go läuft nativ auf allen Betriebssystemen. Das Tool-Set von Go bringt hervorragende Werkzeuge für das Cross-Kompilieren mit, das heißt, die schnelle und unmittelbare Bereitstellung der Applikation für viele verschiedene Plattformen.
  • Geschwindigkeit: Für Go wird kein Skript-Interpreter und keine virtuelle Laufzeitumgebung benötigt. Das macht Go ähnlich schnell wie zum Beispiel die Programmiersprache C, die normalerweise für besonders hohe Leistungsfähigkeit eingesetzt wird.
  • Nebenläufigkeit: Go bietet von Haus aus die Möglichkeit, mehrere Berechnungen parallel durchzuführen, wie Owncloud -CTO Felix Böhm hervorhebt: „Das macht es für Entwickler leichter, rechenintensive Operationen zu parallelisieren und damit eine performante Applikation zu entwickeln.“
  • Syntax: Go ist sehr einfach zu lernen und hat viele Parallelen mit der weit verbreiteten Programmiersprache C. Entwicklerinnen und Entwickler können von ihrem bisherigen Tool-Stack einfach ein- oder umsteigen.
  • Ökosystem: Die Sprache wurde 2009 von Google-Teams präsentiert, ist ein Open-Source-Projekt und profitiert vom Engagement der Community. Viele Tools für Cloud-native Projekte sind in Go geschrieben, etwa die Container-Lösungen Docker und Kubernetes. Allein dies mache Owncloud attraktiv für eine weltweite Entwickler-Community, meint Böhm.

Go kann auf viele weitere Features zurückgreifen, etwa auf automatische Speicherbereinigung und eine direkte, flexible Implementierung von Objektorientierung. Go-Anwendungen sind performanter und verbrauchen deutlich weniger Serverressourcen – damit sinken sowohl die Hardwarekosten als auch der Energieverbrauch. Ein weiterer Vorteil für Owncloud ist der Verzicht auf eine spezielle Datenbank: Owncloud Infinite Scale speichert die Metadaten von Dateien direkt mit den Daten im jeweiligen Storage-Modul.

Die aktualisierte Plattform

Die Vorteile schlagen nun auf die erneuerte Plattform durch. So verzichtet Owncloud bei Infinite Scale auf Datenbanken, PHP und Webserver-Abhängigkeiten – und kommt schlicht als ausführbares Binary. Weil in der Microservices-Architektur auch Speichertreiber Microservices sind, sind sie leicht austausch- und skalierbar. Der Speichertreiber für die softwaredefinierte „EOS“-Speicheranwendung etwa kann redundant und geo-repliziert Unmengen an Daten verwalten. Für konventionellere Deployments stehen andere gebräuchliche Speichertreiber zur Verfügung, weitere sind in Arbeit.

Klaas Freitag, CTO bei Owncloud, sagt: „Wir rechnen für die fertige Version mit einer mindestens um das Zehnfache gesteigerten Leistung. Das bedeutet für unsere Kunden signifikante Produktivitätssteigerungen bei gleichzeitigen Kosteneinsparungen aufgrund reduzierter Hardware-Anforderungen. Zudem lässt sich die von der Datenbank befreite Architektur leichter und besser skalieren, auch geografisch.“

Sicherheit verbessert, Implementierung vereinfacht

Die Plattform besteht aus Microservices, die untereinander über offene Schnittstellen kommunizieren – authentifiziert über OpenID Connect. Das Backend, die Speichertreiber und die Owncloud -Web-Browseroberfläche sind jeweils Microservices, wie auch etwaige Erweiterungen. Microservices können auf unterschiedlichen Geräten laufen und wahlweise nur für andere Microservices erreichbar sein, nicht aber öffentlich.

Das Video zeigt ein Installations-Tutorial für Owncloud Infinite Scale:

Die Arbeitsteilung der Microservices sorgt auch dafür, dass selbst bei einem erfolgreichen Angriff weniger Daten gefährdet sind. Dazu Holger Dyroff, COO bei Owncloud: „Wachsende Datenmengen müssen schnell, effizient und einfach für berechtigte Nutzungen zugänglich sein, und gleichzeitig muss jede Art von unberechtigtem Zugriff verhindert werden.“

Owncloud Infinite Scale läuft per Mausklick auf allen üblichen Betriebssystemen. Die Authentifizierung über offene Standards ermöglicht die Integration mit gängigen Identity-Providern. Die Entwicklung von Erweiterungen wird laut Anbieter ebenfalls einfacher – aufgrund der Standardschnittstellen können Entwickler auswählen, in welcher Programmiersprache sie arbeiten möchten.

(ID:47103141)

Über den Autor

Dr. Dietmar Müller

Dr. Dietmar Müller

Journalist