Dlouhé načítání dat → načtení obsahu pomocí AJAX

emololftw
Člen | 82
+
0
-

Dobrý den / Ahoj všem,

chtěl bych se zeptat, jak řešíte zdlouhavé načítání obsahu.
Mam aplikaci, která je náročnější na kalkulace, kód je již odladěný, ale pracuje se s opravdu velkým objemem dat. Response time je ~20s. Proto do každého divu přidán loading-spinner. (Web bez obsahu se načte opravdu rychle ~130ms)

V tuto dobu řeším problém tak, že načtu stránku bez komponent a po úspěšném načtení (na konci stránky) pošlu AJAX request:

naja.makeRequest('GET', {{link 'this'}});

V *.latte pak obsah divů vypadá:

<section class='ow_con' n:snippet="ow-lineDashboard-2">
	{if $presenter->isAjax()}
		{control chartReport:dayAccumulated}
	{/if}
</section>

V presenteru/komponentě klasicky volám nadřazený snippet.
Chci se zeptat jak problém řešíte Vy. Příjde mi overkill psát do rozsáhlejších dashboard struktur v každém divu {if $presenter->isAjax()}

Děkuji za Váš čas.

Felix
Nette Core | 1247
+
+1
-

Ahoj. Vetsinou se snazim veci predpocitat, pripadne ulozit do cache. Pokud to nejde a ta operace fakt trva tak dlouho, tak bych to udelal jak pises.

CZechBoY
Člen | 3608
+
+2
-

Vicemene to delam podobne, jen to lazy nacteni mam az v komponente samotne. Komponenta si taky sama zavola ten ajax request.

Kamil Valenta
Člen | 822
+
0
-

Případně, pokud lze výpočet rozdělit na více izolovaných kroků, provádět výpočet paralelně. PHP moc na paralelní programování stavěno není, ale někdy se tak dá response time výrazně zkrátit.