Jump to content
php.lv forumi

Ir vēl kādi varianti?


ohmygod

Recommended Posts

Hellou krutie! ((:

Ir tāds jautājiens samilzējis. Uztaisīju skriptiņum kas kādā webā atlasa publiski pieejamas bildes un velk tās pamazām nost.

Viss strādā, bet šausmīgi lēnu. Ja max_max_execution_time ir 30 sek, kā by default, tad novelkas tikai viena bilde. Vairāk nē. Ja uzlieku 300sek, tad atnāk 5 bildes. 5 Bildes 5 minūtēs - baigi lēnu. Ja vēl rēķina, ka bildes aizņem max ~50Kb.

 

Skriptu es domāju pārtaisīt - visus datus sametot sesijās un tad pēc katras bildes downloada refreshot, laine pārsniegtu max_execution_time.

 

Mans tagadējais variants ir šāds:

foreach($biud as $nr => $filename){
$lenght=getimagesize($filename);
$size=$lenght[0]*$lenght[1]*$lenght['bits'];
$handle= gzopen($filename, "rb");
$contents=gzread($handle, $size);
$h=fopen('fot/'.$nr.'.jpg','a');
gzwrite($h, $contents);
}

 

Tad kādas metodes var izmantot, lai iegūtu ātrāku downloadu?

Link to comment
Share on other sites

Atmet php, un lieto normālu kompilējamu valodu, kurā veido threadingu, kurā katrs threads velk vienu bildi. Tā vienlaicīgi atvilksies vairākas.

23335[/snapback]

Es jau labprāt... Bet puslīdz zinu tikai PHP, a mācīties kko jaunu galīgi nav laika.

Ir bijusi doma par Python - derēs...?

Link to comment
Share on other sites

Tākš...

Venom - viss būtu cool, pārtaisīju pagaidām testiem, lai velk bildes tika no norādītās lapaspuses (ierobežoju līdz kādām 15 - 20).

Tevis dotais koda paraugs strādā baigi veikli, bildes iebirst sekunžu 20 laikā, viņām ir pat normāls izmērs (KB), BET - nav paša attēla... :/ Tukšs laukums... :/

Link to comment
Share on other sites

Tik pat labi es bg varētu atstāt browseri, kas lasa bildes 2.ned.

Tomēr gribētos lai tas notiekaas ātrāk.

Ar to es biju domājis, ka palaižot no komandrindas, scripts var darboties bezgalīgi, bet ja palaidīsi uz brouseri, tad pēc laiciņa būs taimauts.
Link to comment
Share on other sites

×
×
  • Create New...