Projekt na Nette 2.0.8 a rychlost načítání
- TOMeek
- Člen | 64
Zdravím,
dělám na projektu pro naší firmu, který běží na intranetu, ale narazil
jsem na dobu načítání stránky. Resp každá stránka se načítá asi
1.6 sec. Pomocí timer() jsem se dopídil že nejdéle trvá
Nette\Application\run()
, konkrétně
$this->presenter = $this->presenterFactory->createPresenter($presenterName);
Projekt se skládá zatím asi z 12 modulů v každém po cca 5 presenterech + každý modul má svůj model pro komunikaci s databází. Poradíte kde by mohl být zakopaný pes? Původně jsem to sváděl na xdebug, protože když jsem ho měl zaplý, tak se stránka načítala asi 5 sec. ale vypnutím se ne vše vyřešilo.
- Caine
- Člen | 216
Mate na serveru nejakou opcode cache? Ta ma zasadni vliv na rychlost tech scriptu. Napr bez 800ms s 80–120ms.
- TOMeek
- Člen | 64
vvoody napsal(a):
Beží ti to na oknách? Možno to je to sekundové nabiehanie connection cez PDO na „localhost“ miesto „127.0.0.1“
Tak to tomu pomohlo
database:
dsn: 'mysql:host=localhost;dbname=database'
jsem nahradil
database:
dsn: 'mysql:host=127.0.0.1;dbname=database'
a nyní je načítání stránky za 300ms. O téhle „vlastnosti“ jsem vůbec nevěděl.
- Jan Mikeš
- Člen | 771
vvoody napsal(a):
Beží ti to na oknách? Možno to je to sekundové nabiehanie connection cez PDO na „localhost“ miesto „127.0.0.1“
Oh díky, tohle jsem ani ja nevedel!
Mel jsem stale problem s tim, ze po prechodu z W7 na W8 mi na localu stranky
loadovaly tak 10× pomaleji,
v configu jsem zmenil hosta db a hle z 2000ms je 150ms :)
- Caine
- Člen | 216
Mozna, ze by stalo za to, to dat sem https://doc.nette.org/…ubleshooting, protoze tenhle problem se tu uz parkrat resil, i kdyz nesouvisi primo s Nette..
- Tomáš Kolinger
- Člen | 136
Proto existuje profilování (a například xdebug + webgrind).
Taky jsem se s tímto bugem setkal a do jedné minuty jsem věděl, že 90% času žere mysql_connect.