http://labs.octivi.com/mastering-symfony2-performance-doctrine/
wyczytałem takie porady:
W skrócie:
- stosuj getArray dla list;
- używaj getReference w setterach;
- JOINuj używając QueryBuildera;
- używaj featch = "EXTRA_LAZY";
To nie prawdy objawione ale ciekawe wskazówki .....
- dla tych prostszych zapytań o listę rekordów stosuj pobieranie do Array() - pomiń Hydration wyników z bazy (czyli mapowanie na obiekty)
...... przykładowy kod niżęj ...... - gdy w jakimś obiekcie chcemy ustawić pole, które jest powiązane w bazie do innej tabeli to nie musimy zawsze posiadać obiektu dla setter'a - wystarczy mieć ID z np. Request i zastosować Referencję do tego obiektu
...... przykładowy kod niżęj ...... - do wielokrotnych Update'ów albo do danych jakie uzyskujemy poprzez JOIN warto zastosować jednak DQL/Query Builder
...... przykładowy kod niżęj ...... - jeśli mamy w bazie połączenie OneToMany to należałoby rozpatrzyć użycie ustawienia fetch="EXTRA_LAZY" dla optymalizacji
Podam parę przykładów realnego użycia ....
Brak komentarzy:
Prześlij komentarz