Cytat(qrees @ 30.03.2008, 19:00:09 )

1GB ma taką stronę... tak, uważam, że to mało, ale może lepiej zastanowić się nad optymalizacją strony.
Ale co tu optymalizować? Jedyne co mógłbym zrobić to porcjować dane i tyle.
Dla ciekawostki (3877 wiersze):
- wyniki z czterech miesięcy w konsoli: 0.97s
- wyniki z czterech miesięcy w przeglądarce (sam foreach bez znaczników i css'a) - wykonywanie skryptu: 8.20s, generowanie strony: 8.54s
- wyniki z czterech miesięcy w przeglądarce (pełna obróbka czyli znaczniki + css) - wykonywanie skryptu: ? ff zawiesił się, generowanie strony: co najmniej 200s
Cytat(qrees @ 30.03.2008, 19:00:09 )

to czy css jest pobierany raz czy nie zależy w dużej mierze od konfiguracji serwera i jakie nagłówki wysyła. Dobrze skonfigurowany serwer będzie wysyłał css tylko gdy się zmieni (podobnie jak inne pliki).
Co do nagłówka meta, to pewnie chodzi ci o css, a nie o cache, bo przeładowanie strony przez pobranie jej z cachu jest trochę bez sensu... A co do css, to pewnie jest tak jak napisałem wyżej.
Możesz napisać coś więcej o tej konfiguracji?
E D I T:
=====
Zrobiłem jeszcze jeden mały test aby wykluczyć to, że b. duży CSS może tak wpływać na zachowania przeglądarek.
Dane z jednego miesiąca (około 1370wierszy) obrabiany w następujący sposób:
<?php
foreach($aVs As $aV)
{
echo '<p><a id="keeper' . $this->iKeeper . '" href="' . Config
::$SystemPath . 'main/pl/SomeAction/date/' . $this->iYear . '-' . $this->iMonth . '-' . $this->iDay . '/id/' . $aV['a'] . '/' . ($this->iKeeper - 1) . '/#keeper' . ($this->iKeeper - 1) . '">' . $aV['a'] . '</a></p>'; echo '<p>' . $aV['b'] . '</p>'; echo '<p>' . $aV['c'] . '</p>'; echo '<p>' . $aV['d'] . '</p>'; echo '<p>' . $aV['e'] . '</p>'; echo '<p>' . $aV['e'] . '</p>'; echo '<p>' . $aV['f'] . '</p>'; echo '<p>' . $aV['g'] . '</p>'; echo '<p>' . $aV['h'] . '</p>'; echo '<p>' . $aV['i'] . '</p>'; echo '<p>' . $aV['j'] . '</p>'; if ($aVoyage['k'])
{
echo '<div><input type="checkbox" name="" value="" checked="checked" disabled="disabled" /></div>'; }
else
{
echo '<div><input type="checkbox" name="" value="" disabled="disabled" /></div>'; }
echo '<p>' . $aV['l'] . '</p>';
$this->iKeeper++;
}
?>
Skrypt wykonuje się w:
1.0003sStrona generowana przez przeglądarkę w:
2.672sJeśli da każdego znacznika dodam style float: left; i dodatkowo w pierwszym clear: both; czyli mniej więcej coś takiego:
<?php
foreach($aVs As $aV)
{
echo '<p style="float: left; clear: both;"><a id="keeper' . $this->iKeeper . '" href="' . Config
::$SystemPath . 'main/pl/SomeAction/date/' . $this->iYear . '-' . $this->iMonth . '-' . $this->iDay . '/id/' . $aV['a'] . '/' . ($this->iKeeper - 1) . '/#keeper' . ($this->iKeeper - 1) . '">' . $aV['a'] . '</a></p>'; echo '<p style="float: left;">' . $aV['b'] . '</p>'; echo '<p style="float: left;">' . $aV['c'] . '</p>'; (...)
?>
Skrypt wykonuje się w:
1.03169sStrona generowana przez przeglądarkę w:
108.76sObciążenie procka:
100%Czyli wychodzi na to, że przeglądarki przy dużej ilości danych i cssie dławią się.