Sziasztok!
Arra keresek megoldást, hogyan tudnék phpban párhuzamosan futtatni kód részleteket. Egy sebességmérésnek és egy pingnek kell egyszerre(!) futnia.
A process forkingot próbáltam eddig, ezt a pélát találtam hozzá:
$pid = pcntl_fork();
if($pid) {
// parent process runs what is here
print "parent\n";
}
else {
// child process runs what is here
print "child\n";
}
aminek ez lenne a kimenete:
child
parent
De nekem nem ezt adja, hanem vagy az egyiket vagy a másikat a kettő egyszerre nem fut le, vagy csak nem látom.
Ötlet? Bármilyen más scriptre lecserélem a mostanit, ha működik.
Vagy ez így eleve rossz megközelítés?
- 1121 megtekintés
Hozzászólások
Ezt miből is futtatod? Apache alól modulból? Mert akkor ez nem fog menni rendesen.
- A hozzászóláshoz be kell jelentkezni
Abból bizony.
Alternatíva esetleg?
- A hozzászóláshoz be kell jelentkezni
cli -ben, generált trartalommal?
A user által beküldöttet meg vagy letárolod fileban, amit beolvasol, vagy adatbázisban, amit kb detto beolvasol. Az eredményt meg lerakod fileba, amit az apache berant.
Vagy ez nem járható?
die(DIE_HARD);
- A hozzászóláshoz be kell jelentkezni
Bármilyen megoldás járható ami működik és jó. Tudnál esetleg erről többet mondani vagy, ha nem link is megteszi.
Mármint user által beküldött mit? Vagy arra gondolsz, hogy lehetséges lenne a user feltöltési sebességének mérése is?
- A hozzászóláshoz be kell jelentkezni
Konkretan van egy daemon, ami most vegtelen ciklusban futna.
A generalt tartalmat minden alkalommal kikuldod file_put_contets -el, majd ezt beolvastatod az apacheval, s pl. ajaxal updateled, ha szukseges a frissitese.
A szerveren meg php -f /ahol/a/file/van
Ezt celszeru daemonkent futtatni.
die(DIE_HARD);
- A hozzászóláshoz be kell jelentkezni
Futtasd FastCGIbol. egyebkent ha speedtestet irsz, remelem valami normalis savszellel rendelkezo helyen vagy.
- A hozzászóláshoz be kell jelentkezni
Csak saját ügyfelek számára lesz elérhető, ilyen minőség biztosítási dolog.
wladek1:
Utána olvasok ennek a megoldásnak hétvégén, ha nem jön össze még jelentkezem :)
Addig is köszönöm a segítségeket.
- A hozzászóláshoz be kell jelentkezni
Rendben, ha konkret segitseg kell, akkor privatban is keress meg (napkozben nem mindig vagyok/lehetek HUP kozelben...)
die(DIE_HARD);
- A hozzászóláshoz be kell jelentkezni