Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wydajność
angerthor
post
Post #1





Grupa: Zarejestrowani
Postów: 73
Pomógł: 0
Dołączył: 13.02.2006
Skąd: Warszawa

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


Witam,

Jestem bardziej programistą Javy, jak PHP, dlatego nie jest pewien jaki sposób pisania kodu jest najbardziej wydajny.

Załóżmy, że mam obiekt komentarz, który w konstruktorze łączy się z bazą danych i pobiera z niej wszystkie wartości odnośnie danego komentarza, typu np. id_komentarz, tresc, autor no i id_artykul, czy id artykulu w bazie do którgo komentarz się odnosi.

I teraz, aby wydajnie pobierać dalsze informację odnośnie tego artykułu z poziomu klasy komentarz, mam jako pole pustą zmienną, która jest inicjalizowana raz, kiedy na obiekcie pola komentarz wywoła się metoda chcąca pobrać dodatkowe info odnośnie komentarza, np. getArticleTitle();. Inicjalizacja czyli wywołanie konstruktora z parametrem id, który łączy się z bazą danych i pobiera dane artykułu.

Zastanawiam się tylko, czy to jest dobre rozwiązanie pod względem wydajności i bezpieczeństwa.

Dzięki za wszelkie opinie
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
angerthor
post
Post #2





Grupa: Zarejestrowani
Postów: 73
Pomógł: 0
Dołączył: 13.02.2006
Skąd: Warszawa

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


Mam kolejne pytanie, również związane z wydajnością.

Otóż użytkownicy, za różne działania otrzymują punkty (m.in.) za komentowanie. Aby obliczyć aktualny stan punktów trzeba pobrać dane z kilku tabel.

I teraz chciałbym wyświetlać kilku użytkowników o największej liczbie punktów. Najprostszym rozwiązaniem byłoby utworzenie obiektów wszystkich użytkowników ( w konstruktorze są obliczane punkty) i sprawdzenie który ma najwięcej.

Jednak stworzenie obiektów dla kilkudziesięciu tysięcy użytkowników za każdym nowym odświeżeniem strony nie jest zbyt wydajne. Drugim sposobem jest stworzenie w tabeli user komorki punkty i napisanie skryput, ktory bedzie co jakis czas, np 15 min tworzyl te wszystkie obiekty obliczal punkty i wpisywal je do konkretnej komorki. Dzieki temu, gdy pozniej bedziemy chcieli wyswietlic najbardziej aktywnych, wystarczy, iz pobierzemy z tabeli ta jedna komorke z punktami.

Ma to wg was sens ?
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: 14.10.2025 - 11:48