Pogledajte određenu poruku
Staro 05. 02. 2007.   #10
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Question kako smanjiti opterecenje CPU?

odlucio sam da se malo igram sa curl multi funkcijama, i nasao sam jedan primer upotrebe na php.net, i po svemu sudeci to je jedini primer koji postoji o tome.

Elem tamo pise nesto ovako:
PHP kôd:
while ($active and $mrc == CURLM_OK) ) {
    
// wait for network
    
if (curl_multi_select($mh) != -1) {
        
// pull in any new data, or at least handle timeouts
        
do {
             
$mrc curl_multi_exec($mh$active);
        } while (
$mrc == CURLM_CALL_MULTI_PERFORM);
    } 
//end_if

Ova petlja u stvari radi neblokirajuci select na otvorenim socketima, samo je to sve upakovano u curl.

Ono sto mene zanima je da li ova petlja, ovako kako je napisana, nepotrebno opterecuje CPU? Da li bi bilo pametnije dodati neki mali usleep() na kraj petlje, da bi se smanjio broj pristupa socketima, u ono vreme kad na njima nema nicega za citanje. Ili bi to mozda imalo suprotan efekat, i usporilo rad, bez smanjenja server load-a ?

Jel ima neko nekog iskustva sa ovim?
__________________
Leadership is the art of getting people to want to do what you know must be done.
ivanhoe je offline   Odgovorite uz citat