Hi,
bei einen Test für eine Socket-Klasse hab ich ein merkwürdiges Verhalten unter Windows 10. Hab es mal hier reingestellt da ich das Problem nicht einordnen kann.
Wie unten in der Zeile Line 50 zu sehen ist blockiert da Irgendwas so dass für ein Connect fast genau 1 Sekunde benötigt wird.
phpcheck.class.socksrv.php Total: 19 Tests, 0 Errors
PHPCheck V1.3.20, OS: WINNT, PHP-Version: 7.2.3 (32 Bit), Time: 5.25 s, Memory: 2.0M (128M)
Der selbe Test läuft unter Linux und auch unter Win XP ohne Verzögerungen.
phpcheck.class.socksrv.php Total: 19 Tests, 0 Errors
PHPCheck V1.3.20, OS: SunOS, PHP-Version: 7.1.20 (32 Bit), Time: 2.21 s, Memory: 2.0M (256M)
Bin aktuell etwas ratlos wo ich da suchen soll. Windows-Macke oder PHP 7.2 ? Alles was so stören könnte (Firewall, Virenscanner..) hab ich probehalber mal ausgeschaltet ohne Änderungen.
Das Zielsystem ist Linux. Mich ärgert es dennoch, das es unter Windows 10 nicht richtig läuft. Irgend welche Ideen in welcher Richtung ich suchen muß?
LG jspit
bei einen Test für eine Socket-Klasse hab ich ein merkwürdiges Verhalten unter Windows 10. Hab es mal hier reingestellt da ich das Problem nicht einordnen kann.
Wie unten in der Zeile Line 50 zu sehen ist blockiert da Irgendwas so dass für ein Connect fast genau 1 Sekunde benötigt wird.
phpcheck.class.socksrv.php Total: 19 Tests, 0 Errors
PHPCheck V1.3.20, OS: WINNT, PHP-Version: 7.2.3 (32 Bit), Time: 5.25 s, Memory: 2.0M (128M)
exist versions info | 22 | $info = $t->getClassVersion("SockSrv"); $t->check($info, !empty($info)); |
[0.6 ms] '1.2' |
Ok |
create a socketserver | 27 | $port = 8000; $ip = 'localhost'; try { $options = array( 'clientConnection' => 'checkClientConnection', //Client-Class 'serverIP' => $ip, 'port' => $port, 'keepAlive' => 1, 'maxLenData' => 16, ); $srv = new SockSrv($options); $result = "Ok"; } catch (Exception $e) { $result = $e->getMessage(); } $t->check($result, $result == "Ok" AND $srv instanceof SockSrv); |
[7.6 ms] 'Ok' |
Ok |
first check with timeout 10ms | 46 | $socketInfo = $srv->check(0.01); $t->checkEqual($socketInfo, array()); |
[10.7 ms] array ( ) |
Ok |
check after connect server | 50 | $sockOpenTimeout =2; $sock = new sock(); $sock->open($ip,$port,$sockOpenTimeout); $clients = $srv->check(0.1); $t->check($clients, count($clients) == 1); |
[1004.8 ms] array ( 0 => checkClientConnection::__set_state(array( 'maxBufLen' => 51200, 'so .. |
Ok |
phpcheck.class.socksrv.php Total: 19 Tests, 0 Errors
PHPCheck V1.3.20, OS: SunOS, PHP-Version: 7.1.20 (32 Bit), Time: 2.21 s, Memory: 2.0M (256M)
check after connect server | 48 | $sock = new sock(); $sock->open('localhost',$port); $clients = $srv->check(0.1); $t->check($clients, count($clients) == 1); |
[1.4 ms] array ( 0 => checkClientConnection::__set_state(array( 'maxBufLen' => 51200, 'so .. |
Ok |
Das Zielsystem ist Linux. Mich ärgert es dennoch, das es unter Windows 10 nicht richtig läuft. Irgend welche Ideen in welcher Richtung ich suchen muß?
LG jspit
Kommentar