Nowe posty

Autor Wątek: Logiczna Interpretacja  (Przeczytany 6705 razy)

Disc

  • Gość
Logiczna Interpretacja
« dnia: 2008-02-20, 13:13:46 »
Witajcie

Zastanawiam się nad projektem bazy danych o usterkach infrastruktury teleeinformatycznej. Sama baza danych będzie tylko solidną podstawą, gdyż zamierzam na jej podstawie stworzyć aplikację, która będzie "żyła".
Życie tej aplikacji rozumiem w sensie pewnej automatyzacji. To znaczy, że docelowo aplikacja ma co piątek o godzinie powiedzmy 18 generować Raport z ilości usterek w danym tygodniu. Przy czym docelowo taki raport powinien wykonywać się automatycznie (np. stworzyć plik PDF), bez udziału człowieka.
Do tego zamierzam dążyć, natomiast nie wiem, czy mi się to uda w logiczny sposób zorganizować :)
 
Nie ma problemu z samym raportem, ani zapytaniem, czy nie nastąpił piątek godzina 18, chodzi o optymalizację - W pseudo kodzie widziałbym to tak:

while (true)   //aplikacja działa nieskończenie długo
{   date(godzina, dzień tygodnia)
   if ((dzien == piątek) && (godzina ==18))  Generuj raport;
}


Teraz zastanówmy się ile razy w ciągu godziny ta pętla zapyta nasz serwer o aktualny czas....właśnie. Chciałbym ograniczyć to do niezbędnego minimum

while (true)
{   date(dzień tygodnia)
   if (dzien == piątek)
           {  while (date(godzina) !=18);            <---- while nic nie zrobi do 18 - średnik
               Generuj raport;
            }
wymuś 24godzinne opóźnienie przed następnym uruchomieniem pętli;
}

Tylko nie wiem jak mogę wymusić na nim, aby zapytanie było opóźniane o 24 godziny, oraz aby w tym czasie nie dokonywał także zapytań kilkadziesiąt razy na sekundę, czy już minęły 24 godziny :)

Założenia są takie, że baza ma być w mysql, obsługa bazy (w tym generowanie raportów) przez php.

Jak Waszym zdaniem możnaby to zrealizować? Serwer linuxowy oczywiście, bo jakżeby inaczej ;)

tadzik1990

  • Gość
Logiczna Interpretacja
« Odpowiedź #1 dnia: 2008-02-20, 13:15:59 »
może sleep(24*3600)? :)

Disc

  • Gość
Logiczna Interpretacja
« Odpowiedź #2 dnia: 2008-02-20, 13:30:29 »
too by miało sens :) Tylko czy nie wyskoczy przekroczenie czasu na wywołanie skryptu?

tadzik1990

  • Gość
Logiczna Interpretacja
« Odpowiedź #3 dnia: 2008-02-20, 17:06:13 »
sprawdź :)

chmooreck

  • Gość
Logiczna Interpretacja
« Odpowiedź #4 dnia: 2008-02-20, 18:50:58 »
man cron :-)