Hindi
16.06.2011, 06:20:26
Witam,
Mój skrypt pobiera z bazy linki do stron www i sprawdza czy one działają, jeśli nie oznacza to w bazie - 'check'=1.
Problem polega na tym, że przy około 2 milionach rekordów, skrypt musi działać co najmniej kilka dni, żeby wszystko przeskanował.
Czy można w jakiś prosty sposób spowodować, żeby uruchomić w skrypcie dodatkowe wątki, które będą robiły to samo (tak jakby odpalić 20 razy ten sam skrypt), tak żeby cały proces
trwał chociaż kilka razy krócej ?
ixpack
16.06.2011, 07:27:15
A czy masz jakiś mały timeout podczas sprawdzania? Możesz np. podzielić bazy, stworzyć np. 10 baz, posegregować strony na kategorie etc. - odpalić 10 skryptów każdy dla jednej kategorii.
10 razy szybciej w teorii.
A nie możesz strony sprawdzać, gdy ta jest "wyświetlana" - w locie? Bez bazy?
mortus
16.06.2011, 07:33:56
W PHP nie ma wielowątkowości. Można jednak użyć kilku sztuczek, aby wielowątkowość symulować. Przeglądnij odpowiedzi na
stackoverflow, a wśród nich co nieco o
przetwarzaniu równoległym.