ďťż

[PHP] Liczenie zawartości z GROUP BY

       

Podstrony


telcocafe

Postanowiłem zoptymalizować algorytmy. Kod przedstawia funkcję do aktualizacji liczby pozycji w kategoriach. Jest wywoływana po modyfikacji kategorii oraz masowych zmianach zawartości.

http://webcm.pastebin.pl/9828

Dla każdej kategorii skrypt wysyła osobne zapytanie, aby policzyć ilość pozycji. Można przyspieszyć proces z GROUP BY, ale... każdy TYP zawartości przechowuje dane w osobnych tabelach, np. arts, files, itd.

Czy wysłanie 1 zapytania z GROUP BY oraz połączenie 5 lub więcej zapytań za pomocą UNION będzie akurat wydajniejszym rozwiązaniem, czy szkoda zachodu? Macie pomysły, jak można jeszcze zoptymalizować sam algorytm w PHP?



Kody wykonywany przy edycji danych - co przebiega rzadko zazwyczaj nie ma większego wpływu na wydajność. Tworzenie skomplikowanych zapytań nie jest najlepszym rozwiązaniem. I też fetchAll(3) to kodzik dnia normalnie :D

I zamiast bezsensowanie "optymalizować algorytmy", co niczego nie zmienia warto zająć się stworzeniem (a nie tworzenie 5 lat) gotowego produktu. Optymalizacja w pionie jest bardzo ograniczona i z powodów finansowo-sprzętowych dość szybko przestaje być alternatywą. Proste CMSy dla masowego odbiorcy na hostingi współdzielone z reguły nie muszą przejmować się skalowaniem w poziomie, czy też innymi specjalnymi zabiegami bo nigdy nie osiągają aż tak dużego ruchu (powiedzmy kilkaset osób online).
Użytkownik Riklaunim edytował ten post 08 lipiec 2009, 19:03
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.