Příliš mnoho dotazů na constructURL
- Oli
- Člen | 1215
Trochu refaktoruju aplikaci a snažím se ji zrychlit. Vyzkoušel jsem blackfire.io a zjistil jsem, že mě chodí 2421 dotazů na constructURL. To mě přijde hodně. Když jsem si dumpnul jaký requesty chodí do tý metody, tak většina (možná všechny, nevím) jsou duplikovaný. Tenhle Request a Url tam mám 16×
Nette\Application\Request #b1a6
method private => "FORWARD" (7)
flags private => array ()
name private => "Frontend:Homepage" (17)
params private => array (3)
lang => "cs" (2)
"paginator-page" => NULL
action => "default" (7)
post private => array ()
files private => array ()
Nette\Http\Url #e673
scheme private => "http" (4)
user private => ""
password private => ""
host private => "ob.loc" (6)
port private => 80
path private => "/"
query private => array ()
fragment private => ""
Co jsem se tak koukal, tak i ostatní Requesty tam jsou zhruba 16×. Moc mě nenapadá čím to je a kde hledat problém. Nějaký nápady?
Jediný co mě napadlo, že se to provede pro každou routu až dokud routa nevyhoví? Pokud ano, jak to zoptimalizovat?
- Jan Tvrdík
- Nette guru | 2595
Pokud tě zajímají podrobnosti, tak se můžeš podívat na moji přednášku.
Nejjednodušší hotfix je prostě negenerovat ty nejvíc frekventované odkazy přes Nette, ale třeba přes vlastní makro.
Taky je dost možné, že máš prostě blbě napsané routy (tj. máš jich nesmyslně moc). Reorganizace nebo napsání vlastního routeru může taky dost pomoci.