Obecnie widzę, że dla tabeli bazy danych z bardzo prostym schematem (około 5 pól) wstawia ona nowe rekordy z szybkością nieco poniżej ~ 50 wstawek / sekundę, w moim lokalnym środowisku programistycznym (dysk SSD) - to z brak obserwatorów w modelu wypełniającym powiązane tabele.
Używając bezpośredniego SQL widzę spore ulepszenie - ~ 1800 wstawek / sekundę. Myślimy o próbie optymalizacji wydajności naszych modeli, ale oczywiście nie chcemy stracić całej ładnej stabilności i elastyczności, jaką zapewnia nam rdzeń Magento.
Zastanawiam się, czy ktoś już wybrał tę drogę i czy są jakieś łatwe wygrane pod względem składników warstwy modelu, które można stosunkowo bezpiecznie ominąć, co da znaczny wzrost wydajności.
Rzeczy jak:
- Rozpoznawanie nazw klas
- przed i po zapisaniu zdarzeń
- Wysyłki zdarzeń
- Transakcje
- itp.
AKTUALIZACJA: Kłamałem, w rzeczywistości było kilka dodatkowych zapytań odpalanych przez obserwatorów lub afterSave (), które widziałem podczas przeglądania dziennika zapytań bazy danych. Benchmarking względem całkowicie prostej jednostki daje mi ~ 300 wierszy / sekundę w modelach Magento - tylko narzut MySQL to transakcje.