win2003 szerver - apache 1.3.33 - php 4.3.10 - oracle 9.2.0.1 lefagyasztja az apache-t
a címben vázolt konfigurációval van problémám: teljesen normális php oldalaknál (azaz általában simán lefutnak) néha beragad az apache (beállítások - felügyeleti eszközök - szolgáltatások alatti manuális leállÍtásra is nagyon lassan reagál, végül leáll). Ez - az általam is látott esetekben (a hibát a kliens jelezte) - akkor következik be, ha az oracle jelentősebb terhelés alatt áll, akkor oldalkérés esetén a kliens oldalon a böngésző homokórázik, a szerveren meg az apache processek 0 cpu fogyasztással állnak.
érdekes még, hogy az error.log-ban nincs bejegyzés (illetve akkor, amikor leállítom az apache-t berak egy forced terminate child bejegyzést), illetve a problémát kiváltó oldal url-je sem kerül be az access.log-ba. Az eseménynaplóba is természetesen csak az kerül be, hogy az apache szerviz le lett állítva.
Egy ideig azt hittem, hogy az oracle kommunikációs csatornája dugul el ennyire, s azért nem fér hozzá az apache, de tévedtem, mert mind szerverről, mind kliensről lehet apache beragadás közben használni (sqlplus)
A php-oracle kommunikációhoz az ora_* függvényeket használom. a beragadás (kivártam!) a max_execution_time többszöröse (25 perc) után sem üt be.
Az oracle egyébként kluszterban van (közös raid, két gépen futó két szerver, ha az egyik behalna, a másik veszi át az irányítást).
Annyira meg vagyok rekedve, hogy még azt sem tudom, miben keressem a hibát. PHP? Apache? Oracle? saját kódom? OK, az utolsó vicc volt, azt már többször átnéztem, bugok vannak (voltak s lesznek :)) benne, de azok az oldalak bugosan is lefutnak és nem halasztják meg a szervert :)
bárminemű tippet előre köszönök!
■ érdekes még, hogy az error.log-ban nincs bejegyzés (illetve akkor, amikor leállítom az apache-t berak egy forced terminate child bejegyzést), illetve a problémát kiváltó oldal url-je sem kerül be az access.log-ba. Az eseménynaplóba is természetesen csak az kerül be, hogy az apache szerviz le lett állítva.
Egy ideig azt hittem, hogy az oracle kommunikációs csatornája dugul el ennyire, s azért nem fér hozzá az apache, de tévedtem, mert mind szerverről, mind kliensről lehet apache beragadás közben használni (sqlplus)
A php-oracle kommunikációhoz az ora_* függvényeket használom. a beragadás (kivártam!) a max_execution_time többszöröse (25 perc) után sem üt be.
Az oracle egyébként kluszterban van (közös raid, két gépen futó két szerver, ha az egyik behalna, a másik veszi át az irányítást).
Annyira meg vagyok rekedve, hogy még azt sem tudom, miben keressem a hibát. PHP? Apache? Oracle? saját kódom? OK, az utolsó vicc volt, azt már többször átnéztem, bugok vannak (voltak s lesznek :)) benne, de azok az oldalak bugosan is lefutnak és nem halasztják meg a szervert :)
bárminemű tippet előre köszönök!
Nem oci-t kellene inkább
Nálam is volt régebben hasonló, de sajna már nem emlékszem mi volt a gond :(
Ha jól emlékszem, akkor BLOB-okkal vagy nagyobb méretű LONG beszúrásokkal volt gond . De az is lehet, hogy egy SELECT-ben több nagyméretű LONG okozta a galibát.
Ha használsz BLOB-okat vagy sok LONG-ot, akkor ezeket nézd meg először.
bizi
bugs.php.net
sajna nincs folytatasa annak a bugnak, valaki tudja, mi ilyenkor a teendo?