Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: SOS fsockopen žiauriai ilgai atidarinėja.
Parašė ibodom· 2009 Bal. 10 23:04:28
#1
Taigi, kodukas paprastas, tikrinam serveris ON ar OFF . Jei jis OFF tai puslapį žiauriai ilgai krauna. Kame replės? ?|
$timeout = "1";
@fsockopen("udp://$server", $portg, $errno, $errstr, $timeout);
Parašė bad_user· 2009 Bal. 10 23:04:23
#2
$timeout pamažink.
Parašė ibodom· 2009 Bal. 10 23:04:59
#3
Iš pradžių ir aš taip galvojau. Bet nustačius 0 arba 0.1 lygiai taspats kas su 1.
Parašė bad_user· 2009 Bal. 10 23:04:34
#4
Padaryk, kad jeigu jungimasis nesekmingas tolesnių funkcijų tiesiog nevygditu.
Parašė ibodom· 2009 Bal. 10 23:04:06
#5
Tas variantas netinka. Pas mane patikrina ir deda on arba off. serverių apie 10. kai kokie 2 iš jų off. kapai ;D
Parašė ozzWANTED· 2009 Bal. 10 23:04:48
#6
Padaryk iframe connection'ą. Tuomet krovimui neturėtų pagal viską įtakos daryt. T.y. nepasikraus tik ta vieta, bet ne saitas lagins.
Beje, timeout'o pavyzdys kuriant objektą:
function createRequestObject() {
var req;
if(window.XMLHttpRequest){
req = new XMLHttpRequest();
} else if(window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
} else {
alert('Problem creating the XMLHttpRequest object');
}
return req;
}
function useHttpResponse1() {
if (http.readyState == 4) {
setTimeout("postid1()",1000);
}
}
Redagavo ozzWANTED· 2009 Bal. 10 23:04:52
Parašė ibodom· 2009 Bal. 10 23:04:43
#7
Šitas netinka. Supranti, kai yra tikrinimas tai reikia ar taip ar taip connectintis, bet vat jei nekonektina nereikia to timeout. o man jį vistiek užmeta. man fsockopen reik naudot, bet kaip mažint laukimą atsakymo? nes ppas mane cikliukas while { t.t.t.t.t $timeout = "1";
$l = @fsockopen("udp://$server", $portg, $errno, $errstr, $timeout);
if(!$l){off}else{on} }
Parašė ozzWANTED· 2009 Bal. 10 23:04:56
#8
O tai kam fsockeopen naudoji. Paimk kokį paprastą "is alive" check skriptuką googlej ir užteks, o tada jau connectus daryk jeigu true.
Parašė ibodom· 2009 Bal. 10 23:04:55
#9
na nebent taip. bandžiau ieškot ;D
php kodo taip ir neradau ;D
Redagavo ibodom· 2009 Bal. 10 23:04:18
Parašė ibodom· 2009 Bal. 11 11:04:17
#11
Kaip ir galvojau, su socket_connect dar ilgiau trunka. Na ką ačiū už bandymus padėt, manau darysiu, kad tikrinimą darys, kas valandą, o būseną saugos
mySQL, kurioje duomenys atsinaujins kas 1h. Taip bus optimaliau :)