seit neuestem habe wir wieder Probleme mit dem WAA. Jetzt lief er seit 2 Jahren ohne diese socket error Geschichte. Eventuell sind momentan mehr Requests und mache Benutzer scheinen ungeduldig immer wieder auf die gleichen Knöpfe zu drücken, wenn noch nichts kommt.
Drücke ich z.B. schnell und oft hintereinander F5 auf der Startseite, dann kann so etwas passieren:
...
[03.11.2009 11:50:14][#28:Pkg][//WEBMANAGE/Login] request at [192.168.100.100]
[03.11.2009 11:50:14][#14:Pkg][//WEBMANAGE/Login] request at [192.168.100.100]
[03.11.2009 11:50:15][#11:Pkg][//WEBMANAGE/Login] request at [192.168.100.100]
[03.11.2009 11:50:15][#35:Pkg][//WEBMANAGE/Login] request at [192.168.100.100]
[03.11.2009 11:50:15][#31:Pkg][//WEBMANAGE/Login] request at [192.168.100.100]
[03.11.2009 11:50:15][#16:Pkg][//WEBMANAGE/Login] request at [192.168.100.100]
[03.11.2009 11:50:15][#8:Pkg][//WEBMANAGE/Login] request at [192.168.100.100]
[03.11.2009 11:50:50] *** -----------------------------------------------------------
[03.11.2009 11:50:50] *** worker #28 Error:
[03.11.2009 11:50:50] ***
e:canDefault :.F.
e:canRetry :.F.
e:canSubstitute:.F.
e:description :
e:filename :
e:genCode :0
e:operation :socket read error
e:osCode :0
e:severity :0
e:subCode :0
e:subSystem :
e:thread :28
e:tries :0
e:cargo :
Callstack:
CGICHANNEL:DISCONNECT(182)
WAATRANSACT:TEXIT(247)
ENDTRANSACTION(403)
SERVEJOB(338)
SERVEJOBPROTECTION(208)
[03.11.2009 11:50:50] *** -----------------------------------------------------------
[03.11.2009 11:50:50] *** worker #28 Request not completed
Das passiert ein paar Mal unbemerkt und der WAA wird immer lahmer. Irgendwann kommt es dann zu einem socket write error.
Umgebung: Win 2003 Server, IIS6, Xbase++ 1.90 331
Im Moment wird der WAA gerade so gestartet:
SET WAA_WORKERTHREADS=80
SET WAA_HOST=localhost
SET WAA_PORT=1024
SET WAA_TRACE=OFF
SET WAA_DEVMODE=OFF
SET WAA_INTERNAL_LOG=ON
Wäre es eine Möglichkeit, zu schauen, ob die akuelle Thread-ID momentan noch benutzt wird... Soetwas wie ein Threadhandler...
Eigentlich ist das ja im WAA eingebaut..
Ein noch nicht vollendeter Thread vernichtet anscheinend ein Socket - der Neustart vom WAA reicht nicht unbedingt, nicht mal ein Neustart vom Rechner hat ausgereicht - ein richtiger Kaltstart kann nötig sein
![angry5 :angry5:](./images/smilies/angry5.gif)
In der IIS MetaBase.xml kann z.B. AllowKeepAlive=TRUE eingestellt werden - die Sockets werden wiederbenutzt und ist anscheinend schneller... Könnte das vielleicht helfen auf FALSE zu stellen...
Grüße, Armin