Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][MySQL][PHP]Cachowanie wyników sortowania
Userr
post
Post #1





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 27.10.2015

Ostrzeżenie: (0%)
-----


1. Przechowuje w tabeli MySQL dane bardzo wielu osób, coś w tym stylu:

Cytat
Imię Nazwisko Numer:
Jan Kowalski 634635325
Piotr Nowak 36746436
Tomasz Pietrzak 73622879
itd...


Na stronie te dane będą wyświetlane w formie tabeli HTML (<table>). Tabelę MySQL wystarczy posortować (po kolumnie numer - od największego do najmniejszego) raz na dzień i ponieważ tabela MySQL ma bardzo dużo wierszy, to postanowiłem, że będę cachował wynik sortowania i aktualizował raz na dzień po ponownym sortowaniu (żeby oszczędzić moc serwera). Rzecz w tym, że nigdy nie używałem cachownia na stronach i nie wiem, czy bardziej wydajniejsze rozwiązanie będzie gdy zacachuję posortowane wyniki od razu z kodem html tabelki:

  1. <tr>
  2. <td>Tomasz</td>
  3. <td>Pietrzak</td>
  4. <td>73622879</td>
  5. </tr>
  6.  
  7. <tr>
  8. <td>Jan</td>
  9. <td>Kowalski</td>
  10. <td>634635325</td>
  11. </tr>
  12.  
  13. <tr>
  14. <td>Piotr</td>
  15. <td>Nowak</td>
  16. <td>36746436</td>
  17. </tr>


czy tylko sam posortowane dane o osobach (jak ponizej)?

Cytat
Tomasz Pietrzak 73622879
Jan Kowalski 634635325
Piotr Nowak 36746436


Wydaje mi się, że wydajniej byłoby to zacachowac od razu z kodem HTML tabelki, bo jak będzie zacachowany tylko wynik sortowania, to dla każdego wiersza trzeba będzie robić coś w tym stylu:

  1. osoby_temp[$i] = explode(" ", $osoby[i]);


2. Z jakiego rozwiązania polecalibyście skorzystać na początku? Chodzi mi, żeby to było w miarę przystępne do nauki. Co powiecie o takiej klasie do cachowania?

Temat: klasa Cache
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Userr
post
Post #2





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 27.10.2015

Ostrzeżenie: (0%)
-----


Dane wyświetlane będą cały czas na stronie (a strona ma sporo użytkowników) i będą posortowane tylko raz na dzień. Więc pasowało mi to tutaj, żeby użyć cache – bo po co za każdym razem odwoływać się do bazy danych, skoro przez cały dzień na stronie będą wyświetlane te same dane.

Podałem trochę nieprecyzyjne dane w pierwszym poście. Chodzi o to, że liczby po których ma być sortowana tabela będą większe niż te przykładowe – będą miały 50 cyfr, a większe liczby sortuje się pewnie dłużej niż mniejsze.

Poza tym, te dane na stronie będę wyświetlał używając stronicowania, czyli nie będę wyświetlał 10 000 wierszy na jednej stronie, tylko po np. 100 na podstronach i będzie lista do stronicowania, która pozwoli przechodzić użytkownikom po kolejnych podstronach.

Czy przy takich założeniach lepiej założyć index na pole, czy lepiej użyć cachowania? A może i jedno i drugie rozwiązanie będzie dobre?

Cytat(Pyton_000 @ 10.03.2017, 13:32:59 ) *
Cache robisz na danych z BD. Choć jak wolisz html teeeż można ale raczej nie zalecane.


Mogę oczywiście zrobić na danych z BD, ale dlaczego cachowanie html raczej nie jest zalecane?


Ten post edytował Userr 10.03.2017, 14:16:16
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 03:09