![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 120 Pomógł: 0 Dołączył: 20.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Zastanawiam się w jaki sposób rozwiązać zliczanie i ewentualne składowanie(o ile potrzebne) danych użytkownika. Powiedzmy, że użytkownik ma jakąś pulę dodanych postów, posty mają jakąś ocenę, dodał ileś komentarzy itp Czy warto dla takich danych tworzyć dodatkową tabelę np. user_stat, która będzie aktualizowana podczas dodawania postu, oceniania lub komentowania czy lepiej pobierać dane zliczając za pomocą COUNT() i SUM()? A może rozwiązać to na zasadzie działania tabeli user_meta w wordpresie, że konkretną statystyką nie jest nazwa kolumny tylko wybrany wiersz? Macie może jakieś doświadczenia z podobnych sytacji? Ten post edytował indexx 29.11.2012, 14:01:21 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Zgadzam się z przedmówcami w 100% ale dodam, że takie coś aby działało najwydajniej musi być zaplanowane już w fazie projektowania. Najlepiej trzymać w jednym wierszu tak jak napisałeś dane o licznikach różnych rzeczy i przy dodawaniu/edycji/usuwaniu takich rzeczy odpowiednio modyfikować te liczniki tak by pokrywały się z rzeczywistymi wartościami.
Kombinowanie z cache'm, cronami itd. w takim przypadku sprawi, że dane nie będą aktualne. Zliczanie wszystkiego każdorazowo dobije bazę (IMG:style_emoticons/default/smile.gif) jak zrobisz taki systemik to dobrze jest zrobić sobie dodatkowy widok w bazie w którym odpowiednim zapytaniem uzyskasz taką samą tabelę jak ta z wartościami liczników - wówczas bardzo łatwo jest w razie czego porównać czy liczniki dobrze działają - jest to jednak rzecz do manualnego testowania bo widok będzie oczywiście obciążał (IMG:style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 17:33 |