Warum Sie von Magento 1.x auf Magento 2 wechseln sollten
Bereits seit November 2015 ist eine stabile Version von Magento 2 verfügbar. Das lang erwartete Release stellt die technologische Weiterentwicklung von Magento 1.x dar. Im Vergleich zu den Vorgänger-Versionen ist der technische Unterschied so groß, dass eine schnelle und einfache Migration Ihrer E-Commerce-Plattform kaum möglich erscheint. 7thSENSE arbeitet derzeit an verschiedenen neuen E-Commerce-Projekten auf Basis von Magento 2. Im Folgenden möchten wir Ihnen erläutern, wie eine Migration auf Magento 2 durchgeführt werden kann und welchen Nutzen Sie davon haben.
Was versteht man eigentlich unter Migration?
Um die Software Ihres E-Commerce-Systems zu aktualisieren ist eine Menge Arbeit erforderlich. Welchen Aufwand ein solches Upgrade verursacht hängt natürlich von der Menge der speziellen Individualisierungen ab, die Ihr bestehendes System aufweist. Das Upgrade dauert bei einem großen Anteil von Individualprogrammierung selbstverständlich länger. Die gute Nachricht ist jedoch, dass die Übernahme Ihrer bestehenden Daten aus der alten Magento 1.x Version einfach zu bewerkstelligen ist. Zwar wurden in Magento 2 sowohl die Datenbankarchitektur als auch das Datenbankschema überarbeitet, die Anzahl an Änderungen in diesem Bereich ist jedoch vergleichsweise gering. Daher konnte das Magento-Entwicklerteam ein Tool zur automatischen Migration erstellen, das die gesamte Datenbank aus der alten Version automatisch überträgt. Produkte, Kunden, Preise und Attribute werden einfach aus der alten in die neue Version importiert.
Allerdings haben sich mit Magento 2 auch eine Menge grundlegender Änderungen im Bereich der Templates und des Codes ergeben. Entsprechend muss in der Praxis die komplette Template- und Skin-Struktur der E-Commerce-Plattform neu erstellt werden. Wenn Ihr Shop bereits seit einiger Zeit online ist kann dies eine gute Gelegenheit dazu sein, Usability-Optimierungen oder gar eine komplette Aktualisierung des Designs Ihres Online-Shops in Angriff zu nehmen. Neben den Templates hat sich auch der Code des Systems verändert, so dass modernste PHP-Funktionen und andere innovative Technologien verwendet werden können. Davon hat nicht nur die Leistung im Frontend profitiert, sondern Magento 2.0 ist auch entwicklerfreundlicher und pflegeleichter in Sachen Code geworden. Die Modulstruktur wurde vereinheitlicht und gekapselt, das Backend neu gestaltet und das ursprüngliche Prototype-Framework ersetzt.
Vermutlich wird es auch bei Ihrer E-Commerce-Plattform nötig sein, die gesamte Struktur der Module zu verändern, das XML anzupassen und PHP-Namespaces zu verwenden. Die grundsätzliche Logik Ihrer Algorithmen und Funktionen kann jedoch weiterhin verwendet werden. Wahrscheinlich werden Sie auch Schnittstellen zu Drittsystemen lediglich in ihrer Implementierung, nicht jedoch in ihrer Logik anpassen müssen.
Wenn bei Ihrem Magento-System Drittanbietermodule zum Einsatz kommen ist es auch sehr wahrscheinlich, dass deren Entwickler bereits eine neue Magento 2-Version dieser Extensions zur Verfügung stellen können. Damit wird die Migrationszeit natürlich deutlich reduziert.
Ist es das wert?
Der Funktionsumfang von Magento 1.x wird zukünftig nicht mehr erweitert werden. Auch die Extension-Entwickler richten sich zunehmend explizit in Richtung Magento 2.0 aus. Die Migration ist daher in gewisser Weise unvermeidlich.
Bis zum Jahr 2018 wird es für Magento 1.x noch Bugfixes und Sicherheits-Updates geben. Danach werden für die ältere Version keine Patches mehr veröffentlicht. Sofern sich hier nicht eine neue Community um die 1.x-Version des OpenSource-E-Commerce-Systems bilden sollte kann es gut sein, dass neu entdeckte Sicherheitslücken ab diesem Zeitpunkt nicht mehr geschlossen werden.
Magento 2.0 ist zudem weitaus effizienter als die Vorgängerversion. Im Standard werden bereits Varnish und Full Page Caching (FPC) von Haus aus unterstützt, letzterer jedoch nur in der Enterprise-Version. In Bezug auf die Skalierbarkeit ist auch die Option zur Datenbankreplikation in einem Multi-Master-Modus erwähnenswert. Dies bedeutet, dass Sie dedizierte Datenbankserver verwenden können, die jeweils nur ein bestimmtes Verzeichnis oder nur den Bestellprozess verwalten. Dieses in Magento 1.x noch nicht vorhandene Feature ist vor allem für E-Commerce-Plattformen mit einem hohen Besuchs- und Auftragsvolumen enorm spannend.
Der Checkout wurde ebenfalls neu entwickelt und arbeitet nun schneller und effizienter. Auch mit der Indexierung der Daten verbundene Probleme wurden durch die Einführung von materialisierten Views gelöst, die auf Basis von Prüfsummen die Zeilen erkennen, die geändert wurden und nur diese aktualisieren.
In Bezug auf die neuen Funktionen muss natürlich auch das Backend erwähnt werden. Dieses wurde von Grund auf neu geschrieben und gestaltet.
Magento hat sich den gewachsenen Anforderungen des E-Commerce angepasst – der enorme technologische Sprung stellt bei dem Upgrade von Magento 1.x auf Magento 2 dabei Hürden auf, die überwunden werden müssen. Dieser Schritt war zur Sicherung der zukünftigen Weiterentwicklung des E-Commerce-Frameworks jedoch unabdinglich. Magento 1.0 wurde vor acht Jahren veröffentlicht und kontinuierlich weiterentwickelt - im Falle von Magento 2 ist ein vergleichbarer Zeitraum zu erwarten.
Das neue Magento bringt nicht nur technologische und funktionale Verbesserungen mit sich, sondern auch die Entwicklung eines eigenen Öko-Systems. Bald wird der neue App-Store mit Modulen, der als Ersatz für den alten Magento Marketplace dienen soll, eingeführt werden. Die Macher versprechen auch vierteljährliche Updates – der Code der Community Edition steht komplett auf GitHub bereit. Damit wird nicht nur die Transparenz erhöht, sondern auch die Geschwindigkeit der Weiterentwicklung des Systems seiner Bestandteile enorm erhöht.
Wie sollten Sie ein Upgrade angehen?
Um den Migrationsaufwand einschätzen zu können sollten Sie am besten ein Code Audit Ihres bestehenden Systems in Auftrag geben. Der daraus resultierende Bericht stellt Ihnen eine Liste der Tätigkeiten dar, bei der Migration durchzuführen sind. Dabei können wir Ihnen unter Umständen auch Verbesserungen und Änderungen vorschlagen, die die Lesbarkeit des Codes, die Performance Ihres Gesamtsystems oder die Sicherheit erhöhen können. Das Code Audit ist in jedem Fall empfehlenswert, da Sie nur so die nächsten Schritte auf der Basis von Zahlen und Fakten planen können. Denn Intuition allein ist hier nicht die beste Entscheidungsgrundlage.