Magento-Module – goldenes Kalb oder die Büchse der Pandora?

von | Okt 25, 2011 | Allgemein, Magento, Shopsysteme, Technologie | 0 Kommentare

Eines der größten Argumente für Open-Source-Systeme wie Magento sind verfügbare Module, welche die Funktionalität des Grundsystems um Lösungen für wiederkehrende Aufgabenstellungen erweitern. Magento bietet auf seiner Plattform Connect sowohl unentgeltliche als auch kostenpflichtige Module an. Das Installieren wird dem Shop-Betreiber durch den Magento Connect Manager auch sehr einfach gemacht, ein neues Modul ist in Nullkommanichts installiert und vollführt von nun an seinen Dienst. Doch gerade die mit der geringen Komplexität einhergehende niedrige Hemmschwelle beim Integrieren neuer Module kann zu großen Problemen führen. Die meisten Betreiber von Magento-Online-Shops gehen mit der Installation von Modulen deutlich zu unkritisch, teilweise naiv um und sollten die Extensions deutlich häufiger hinterfragen. Die Liste der Problematiken, die durch Module heraufbeschworen werden können, ist relativ lang:

Funktionalität
Macht das Modul wirklich, was ich mir darunter vorstelle? Die Beschreibung passt, die Screenshots sehen sehr viel versprechend aus. Aber ob im Kern und im Detail dann auch wirklich ein Modul dahinter steckt, was genau die speziellen Anforderungen des jeweiligen Shops erfüllt, ist fraglich. Woher bezieht es seine Daten? Entspricht die Logik dem, was sich der Shop-Betreiber vorgestellt hat? Wie hoch ist der Aufwand, um eine „kleine Änderung“ durchzuführen? Kann man die Ausgaben an die eigenen Vorstellungen anpassen? Die Antworten auf all diese Fragen können nicht mittels Screens und Co., sondern erst nach einer detaillierten Prüfung des Programms gegeben werden.
Sicherheit
Es sollte bei der Integration eines Moduls geprüft werden, ob die installierten Mechanismen grundlegende Regeln der Sicherheit einhalten. SQL Injection, Cross-Site-Scripting oder Cross-Site Request Forgery sind nur drei mögliche Angriffsmöglichkeiten, die in einem guten Magento-Modul nicht vorkommen sollten. Die Sicherheit sollte jedoch nicht als gottgegeben angenommen werden – hier ist der Betreiber einer Seite selbst aufgerufen, dies explizit zu überprüfen.
Performance
Jedes Modul wird die Leistungsfähigkeit des gesamten Systems ein Stück mehr bremsen. Das fängt mit einer Verlängerung der Konfiguration an und setzt sich über die Verarbeitung des eigentlichen Zwecks eines Moduls fort. Das wird man nicht verhindern können – allerdings sollte man darauf achten, dass ein Modul seine Arbeit möglichst effizient durchführt. Es sollte darauf geachtet werden, dass Caches genutzt und somit unnötige Rechenoperationen vermieden werden.
Skalierbarkeit
Ein Modul kann im Kontext eines kleinen Shops mit einer Handvoll Produkten und Kunden sehr gut funktionieren, bei der Verarbeitung eines Enterprise Stores mit einer Million Produkten jedoch komplett versagen. Im schlimmsten Fall hieße das: Der Shop ist bei eingeschalteter Funktionalität einfach nicht mehr zu erreichen.
Wartbarkeit
Für den Betrieb eines Online-Shops sowie dessen kontinuierliche Weiterentwicklung ist es von zentraler Bedeutung, dass alle eingesetzten Module die notwendigen Eingriffe „sanft“ durchführen. Dies bedeutet zu allererst, dass Änderungen in dem Sinne ausgeführt werden, der von Magento zur Änderung vorgesehen wurde. Man muss sich auch im Klaren darüber sein, dass durch die Veränderung einiger Prozesse andere Änderungen oder Module von der Installation ausgeschlossen werden. Auch Updates auf neue Magento-Versionen werden durch die Vielzahl von installierten Magento-Modulen in der Regel deutlich erschwert.

Noch etwas brisanter ist die Problematik im Rahmen von Professional- oder Enterprise-Editions. Hier bezahlt der Betreiber eines Shops für die professionelle Lizenz, durch die im Härtefall auch eine Verbesserung oder Kompensation von Magento erzielt werden soll. Je mehr Module jedoch in die Verarbeitung der Original-Prozesse eingreifen, desto unwahrscheinlicher wird jedoch der Haftungsfall für Magento, könnten doch eben die installierten Module für die fehlerhafte Leistung verantwortlich sein.

Ein großer Vorteil der Enterprise-Edition ist der Full-Page-Cache. Damit dieser jedoch ordnungsgemäß funktionieren kann, müssen auch die installierten Module hierzu kompatibel sein. In der Praxis schaut der Kunde hier gleichwohl aufgrund inkompatibler Entwicklung oft in die Röhre und der teuer bezahlte Full-Page-Cache bleibt ausgeschaltet.

Problematisch bei kommerziellen Modulen ist darüber hinaus, dass man die Qualität eines Moduls erst überprüfen kann, nachdem man bereits dafür bezahlt hat. Andernfalls müsste man beim Hersteller eines Moduls zunächst eine Test-Version beantragen, um bei positiver Prüfung die Vollversion zu erwerben. Kommerzielle Module sind darüber hinaus häufig mit IonCube verschlüsselt und können somit gar nicht oder nur mit hohem Aufwand auf Schwachstellen überprüft werden. Auch entstehen hiermit Aufwände für die Administration des IonCube-Moduls für PHP.

Wenn man nun bedenkt, dass oben genannte Punkte sowohl im Rahmen der Installation als auch bei jedem Update eines Moduls überprüft werden müssen, kann die vermeintlich kostenfreie Extension relativ schnell zeitintensiv und damit sehr teuer werden.

Insgesamt möchten wir nicht davon abraten, kostenfreie oder kostengünstige Module von der Stange einzusetzen – im Gegenteil: diese Möglichkeit stellt für viele Shop-Betreiber eine günstige Alternative dar, um oft gewünschte Funktionalitäten nachzurüsten. Auch wir stellen bekanntlich einige Module für Magento – selbstverständlich kostenfrei – zu Verfügung. Wir möchten aber gerade aufgrund unserer Erfahrung mit anderen Modulen umso dringender dazu raten, alle Erweiterungen detailliert zu überprüfen und im Zweifel eine externe Expertenmeinung einzuholen. Wenn hierdurch eine Downtime oder ein Datenverlust verhindert werden kann, ist eine tief greifende Untersuchung gut investierte Zeit bzw. gut investiertes Geld.

PS: Die Problematik ist nicht Magento-spezifisch! Diese Ausführungen lassen sich auf diverse andere Systeme genauso anwenden.

0 Kommentare

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Akeneo trifft auf künstliche Intelligenz

Akeneo trifft auf künstliche Intelligenz

In der heutigen Zeit sind Unternehmen auf der Suche nach innovativen Technologien, um ihre Geschäftsprozesse zu optimieren und ihre Wettbewerbsfähigkeit zu steigern. Eine dieser Technologien ist Künstliche Intelligenz (KI), die Unternehmen bei der Automatisierung von...

mehr lesen
Consent Management Platform von Real Cookie Banner