Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/mysql] wykonanie skrypty - TimeOut
Forum PHP.pl > Forum > PHP
stal-sw
Chcialbym sie dowiedziec jak sobie radzicie, z sytuacja gdy w bazie danych robicie update kilkudziesieciu tys. rekordow. Np UPdate Page Ranku - tak aby zapobiec timeoutowi.

Jak sobie radzic z takimi sytuacjami questionmark.gif

Ja np. chce w katalogu stron zrobic update PR dla wszytkich stron wiec robie tak:
  1. <?
  2. $pobierz_adresy = $db->get_results("SELECT id, url FROM ".PAGES."");
  3. foreach($pobierz_adresy as $adresy) {
  4. $nowy_pr = check_pr($adresy['url']);
  5. $db->query("UPDATE ".PAGES." SET pr='".$nowy_pt."' WHERE id='".$adresy['id']."' ");'
  6. ?>


I niestety ten skrypt wykona update dla kilku stron i nastepnie na serwerze wyskoczy mi blad 505 lub komunikat TIMEOUT.

Z gory dzieki za pomoc.
kwiateusz
użył klauzuli limit i aktualizuj po iles zapytań następnie refresh strony i w adresie sobie przekazujesz na czym skonczyles, potem w skrypcie pobierasz licbe z aresu i robisz nastepny update od miejsca w ktorym skonczyles i tak az sie wszytsko zaktualizuje winksmiley.jpg
stal-sw
Witam.
A mzoe ma ktos pomysl jak to obejsc za pomoca AJAXA i tym samym po sprawdzeniu PR dla danej strony wyswietalc adresu strony: stary PR oraz nowy PR - i to wszytko jedno pod drugim : mniej wiecej na takiej zasadzie jak dziala np. pingowanie jakiej strony z wiersza polecen questionmark.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.