Własny indekser – mview.xml, flat table, full/partial reindeksacja, triggerowane przez cron
System indeksowania Magento 2 to jeden z bardziej niedocenianych mechanizmów platformy. Gdy masz własne dane które muszą być szybko dostępne – ceny z zewnętrznego ERP, stany magazynowe z WMS, własne atrybuty wyszukiwania – napisanie własnego indeksera jest często lepszym rozwiązaniem niż zapisywanie wszystkiego do EAV przy każdym zapytaniu. Pokazuję jak zbudować kompletny indekser z obsługą pełnej i częściowej reindeksacji.
- Opublikowano w Magento / Adobe Commerce
Trendy 2025 – FrankenPHP, AI tooling update, OpenSearch, Hyvä konsolidacja
Nowy rok to dobry moment na przegląd tego co dzieje się w ekosystemie PHP i Magento 2. Po kilku intensywnych latach (PHP 8.0 do 8.4, Magento headless, Hyvä, AI tooling) wchodzę w 2025 z kilkoma obserwacjami które mogą mieć realny wpływ na projekty przez kolejne 12 miesięcy. Bez marketingowych bzdur – tylko to co faktycznie widać w kodzie, społeczności i na produkcji.
- Opublikowano w PHP
Magento 2.4.8 – PHP 8.4 wsparcie, migracja Elasticsearch → OpenSearch, checklist upgrade
Ostatni dzień 2024 roku to dobry moment na podsumowanie zmian w Magento 2.4.8 które pojawiło się w tym roku. Największa zmiana techniczna to oficjalne wsparcie PHP 8.4 i przejście z Elasticsearch na OpenSearch jako domyślny silnik wyszukiwania. Przeglądam co to oznacza dla istniejących projektów i jak wygląda migracja.
- Opublikowano w Magento / Adobe Commerce
LRU Cache – O(1) implementacja z HashMap + lista dwukierunkowa, per-request cache
LRU (Least Recently Used) Cache to jeden z klasycznych problemów algorytmicznych z rozmów rekrutacyjnych, ale też realna struktura danych używana w systemach produkcyjnych. Redis domyślnie używa wariantu LRU do eksmisji kluczy. PHP OPcache stosuje LRU. Pokazuję jak zaimplementować LRU Cache w O(1) dla get i put, używając hashmapy i listy dwukierunkowej – i gdzie to ma zastosowanie w e-commerce.
- Opublikowano w Algorytmy
