Seite 47 - Mironsoft Blog
-
Maxim Mironjuk
-
März 09, 2026
Partitionierung und Sharding tauchen in Architekturdiskussionen häufig als Synonyme auf, obwohl sie technisch grundverschiedene Probleme lösen. Partitionierung teilt eine große Tabelle innerhalb einer einzigen Datenbankinstanz in kleinere, physisch getrennte Segmente auf, während Sharding Daten über mehrere unabhängige Datenbankinstanzen hinweg verteilt. Wer diesen Unterschied nicht sauber trennt, unterschätzt entweder den Betriebsaufwand von Sharding oder verpasst die Chance, mit dem deutlich einfacheren Werkzeug Partitionierung ein Problem zu lösen, das gar kein verteiltes System braucht.
-
Maxim Mironjuk
-
März 09, 2026
Wer eigene Magento-2-Module über mehrere Kundenprojekte hinweg pflegt, kommt an einem privaten Composer-Repository nicht vorbei. Statt Module manuell per FTP oder ZIP zu verteilen, macht ein privates Composer-Repository sie über composer require installierbar, versioniert über Git-Tags und mit vollständiger Abhängigkeitsauflösung gegen magento/framework. Dieser Artikel zeigt, wie Sie von der repositories-Konfiguration über eine eigene Satis-Instanz bis zur abgesicherten CI-Pipeline eine belastbare Verteilungsinfrastruktur aufbauen.
-
Maxim Mironjuk
-
März 09, 2026
Bashs eingebautes Globbing kann weit mehr als das einfache Sternchen-Muster vieler Anfängerskripte: Mit shopt -s extglob stehen erweiterte Pattern wie Alternativen und Negation zur Verfügung, globstar aktiviert rekursives ** Matching über ganze Verzeichnisbäume, und nullglob verhindert den klassischen Fehler, bei dem ein Muster ohne Treffer wörtlich als Dateiname weitergereicht wird.
-
Maxim Mironjuk
-
März 09, 2026
Prepared Statements stoppen die klassische SQL-Injection an der Eingabemaske, aber laengst nicht jeder Vektor laeuft ueber ein einzelnes Formularfeld. Second-Order-Injection, Blind-Injection ohne sichtbare Fehlermeldung, Out-of-Band-Exfiltration ueber DNS und Injection in Identifier-Kontexten wie ORDER BY umgehen genau die Schutzmassnahmen, auf die sich Teams meist verlassen.
-
Maxim Mironjuk
-
März 09, 2026
Magento 2 bringt von Haus aus keine Subscription-Engine mit, Abo-Produkte müssen als eigenständiges Modul entwickelt werden. Dieser Artikel zeigt, wie Datenmodell, Service Contracts, Cronjob-Abrechnung und Vault-Tokenisierung für wiederkehrende Zahlungen technisch sauber in Magento 2.4.8 umgesetzt werden. Im Fokus stehen Service Contracts, declarative Schema und GraphQL-Mutationen für den Kunden-Self-Service.
-
Maxim Mironjuk
-
März 08, 2026
Ein falsch konfiguriertes Font Loading zeigt entweder unsichtbaren Text während des Ladens oder einen sichtbaren Schriftwechsel samt Layout-Sprung, sobald die Web-Font eintrifft. Mit der richtigen Kombination aus font-display, Preload und Subsetting lässt sich beides vermeiden, ohne auf individuelle Typografie zu verzichten.
-
Maxim Mironjuk
-
März 08, 2026
Sobald eine Anwendung aus mehreren Containern besteht, entscheidet das gewählte Kommunikationsmuster über Stabilität, Kopplung und Fehlertoleranz des gesamten Systems. Von direkter Namensauflösung über Sidecar- und Ambassador-Muster bis zu asynchronen Message-Queues zeigt dieser Artikel, welches Muster für welche Anforderung passt.
-
Maxim Mironjuk
-
März 08, 2026
Ein Breaking Change in einer REST-API ist kein Versionsproblem – es ist ein Vertragsproblem. Wenn Konsumenten sich auf ein Schema verlassen und der Provider es still verändert, entstehen Produktionsausfälle ohne Vorwarnung. Technische Absicherung bedeutet: Breaking Changes automatisch erkennen, Deprecation-Zyklen durchsetzen und Consumer-Driven Contract Tests als strukturelles Sicherheitsnetz einzusetzen.
-
Maxim Mironjuk
-
März 08, 2026
Das dialog-Element bringt Fokus-Management, Escape-Handling und einen echten Backdrop direkt im Browser mit. Mit Tailwind CSS und ein wenig Alpine.js wird daraus ein produktionsreifes Modal-System, das ohne Fokus-Traps aus JavaScript-Bibliotheken auskommt und trotzdem vollständig zugänglich bleibt.
-
Maxim Mironjuk
-
März 08, 2026
Die Wishlist-Funktionalität im Hyvä Theme ersetzt Magentos Luma-Widgets durch schlankes phtml und Alpine.js: ein Alpine.store hält die Produkt-IDs der Merkliste im Client, während fetch()-Aufrufe gegen den Magento_Wishlist-Controller mit form_key die Serverseite synchron halten. Dieser Artikel zeigt, wie das Herz-Icon sofort auf Klicks reagiert, wie optimistische Updates mit Rollback funktionieren und wie Gäste sauber zum Login geführt werden, ohne dass eine einzige Seite komplett neu lädt.
-