Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator masterG am 02.10.2010 um 11:17:17 Uhr
Code in Codeblock verpackt. Bitte Formatierungshilfe ansehen.
GELÖST

Anpingen eines WEB PCs, dauert zu lange wenn nicht erreichbar

Frage Entwicklung PHP

Mitglied: kaktus

kaktus (Level 1) - Jetzt verbinden

02.10.2010, aktualisiert 04.10.2010, 3679 Aufrufe, 3 Kommentare

Hallo Forum, mir wurde hier schon oft geholfen, deshalb versuche ich es heute nochmals

Ich habe auf meiner Webseite einen PHP Script wie unen laufen. Er funktioniert soweit sehr gut, nur wenn xxxxx.dyndns.org nicht erreichbar ist, dann dauert das laden der Webseite sehr sehr lange, ca 30 Sekunden.
Das würde ich gerne auf 1 oder 2 Sekunden verkürzen.

Kurze Beschreibung:
Das script pingt eine Webadresse an, berechnet die Anwortzeit und gibt mir aus dem Logbuch (liegt auf einer anderen Adresse) die letzten drei Einträge zurück.

Beispiel:

01.
XXXXXX-L OFFLINE 01:00 - 07:00 MEZ/MESZ
01.
2010-09-28 18:19:51 Verifying I0RNK angelo 79.3.210.154 
02.
2010-09-28 18:19:56 Connect I0RNK angelo - 79.3.210.154 
03.
2010-09-28 18:20:07 Disconnect I0RNK Peer requested disconnect 
Frage 1: Wie könnte ich diese extrem lange Antwortzeit verkürzen.

Ich bin gerade am überlegen ob ich den Pingwert wirklich brauche.

Frage 2: Wie könnte man das Script kürzen, wenn man Ping nicht bräuchte?


01.
$call='xxxxxx'; 
02.
$host='xxxxxxx.dyndns.org'; 
03.
$port='81'; 
04.
     
05.
$starttime=microtime(); 
06.
$socket=@fsockopen($host,$port); 
07.
stream_set_timeout($socket, 2); 
08.
$endtime=microtime(); 
09.
                
10.
                 
11.
				if ($socket!=false) 
12.
13.
                        fclose($socket); 
14.
                        list($msec,$sec)=explode(' ',$starttime); 
15.
                        $starttime=(float)$msec+(float)$sec
16.
                        list($msec,$sec)=explode(' ',$endtime); 
17.
                        $endtime=(float)$msec+(float)$sec
18.
                        $pingtime=($endtime-$starttime)*1000; 
19.
20.
                 
21.
				else 
22.
23.
                        $pingtime=-1; 
24.
25.
                 
26.
				if ($pingtime!=-1) 
27.
28.
                        echo $call.'<b><font color="green"> ONLINE</font></b> 07:00 - 01:00 MEZ/MESZ | Ping '.round($pingtime,2).' ms'; 
29.
30.
                 
31.
				else 
32.
33.
                        echo $call.'<b><font color="red"> OFFLINE</font></b> 01:00 - 07:00 MEZ/MESZ'; 
34.
35.
                 
36.
				flush(); 
37.
				 
38.
echo '<br><br>'; 
39.
$file = file ('http://XXXXX.xxxx-xxxxx.de/ECHOLINK/QSOLog.txt'); 
40.
 
41.
$zeile = array_pop($file); 
42.
$zeile_1 = array_pop($file); 
43.
$zeile_2 = array_pop($file); 
44.
echo $zeile_2.'<br>'; 
45.
echo $zeile_1.'<br>'; 
46.
echo $zeile
47.
fclose($file);
Mitglied: EvilMoe
02.10.2010 um 11:03 Uhr
Vielleicht hilft dir das:
01.
# fsockopen ( string $hostname [, int $port= -1 [, int &$errno [, string &$errstr [, float $timeout= ini_get("default_socket_timeout") ]]]] ) 
02.
 
03.
 
04.
$socket=@fsockopen($host,$port,$errno, $errstr,5); //timeout von 5 sec. 
05.
 
06.
 
07.
 
Bitte warten ..
Mitglied: Arano
02.10.2010 um 11:06 Uhr
Hallo Kaktus,

das sollte einfach gehen, schau dir das Manual noch mal an - die Parameter

PHP-Manual - fsockopen

Gruß
Arano

Edit: Ich sollte den Fernseher mal verschrotten lassen - immer diese Ablenkung...
Bitte warten ..
Mitglied: kaktus
02.10.2010 um 11:54 Uhr
$errstr,5

Das war die Lösung, DANKE
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst SBS2011 Selbst ausgegebenes Zertifikat wird erneuert dauert lange (10)

Frage von Freizeitmanager zum Thema Windows Server ...

Datenbanken
SUM oder AVG in SQL Abfrage dauert viel zu lange warum? (5)

Frage von samet22 zum Thema Datenbanken ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Viren und Trojaner
Ransomware .nm4 (14)

Frage von Zyklo92 zum Thema Viren und Trojaner ...

iOS
16 iPads zentrall verwalten (14)

Frage von simonlohr zum Thema iOS ...

Microsoft Office
+1.000 Ordner in Outlook: Wie besser? (11)

Frage von Matsushita zum Thema Microsoft Office ...