Hallo Forum.
Wir kämpfen mit hausweiten "chokes" von 1 bis 5 Sekunden (und manchmal totalen Stillstand) des TIC.
Wird ein TIC im Haus gestartet oder geschlossen, gibt es einen solchen Choke mit ~100% CPU Last.
Eckdaten:
David.ZEHN!, latest feature Pack, Win2k3 - ADS MemberServer, 2 3,4er Xeons, 4GB RAM, 2xGb Nic (HT ausgeschaltet)
--~900-- Clients, ca 150 davon Win2k, Rest XP, ca. 100 Clients per Citrix Metaframe aus externen Netzen angebunden,
'Datenlager' im SAN mit 10Gb lokalem FibrechannelControler angebunden
Uns macht eine mit Chokes ausgelastete erste CPU Probleme, auf der der Service Layer (fast) alleine läuft.
Die NICs des Servers sind wegen vermutetem Defekt erneuert worden.
Doch die Problematik scheint im ServiceLayer zu liegen.
Unsere Vermutungen:
SL.exe treibt die CPU auf die Spitze, wenn mehr Anfragen eingehen,
als der Dienst beantworten kann.
Durch dieses Verhalten (hausweit 'steht' die Applikation fuer einige Sekunden)
entsteht ein Rückstau in der Kommunikation. Bald beginnt die Netzwerkkarte, Pakete
zu verwerfen, weil sie von höheren Ebenen keine Reaktion/Abnahme bekommt.
Dieses äussert sich dann in wachsenden Fehlerquotes der Karte.
Eine Direkte Frage zu dieser Überlegung:
Wieviele 'Ohren' hat der Service Layer ?
Keine anderen Werte (PageFaults, NIC_usage, Datenzugriff, DPCs, Interrupts/s, etc) scheinen mit diesen Lastspitzen in direkter Verbindung zu stehen, das Verhältnis Chokes/Pozessorlast zu OpenFileSessions wird zur Zeit noch erörtert.
Ein Filemon-Dump zeigt, die Apllikation sl.exe 'nudelt' ständig auf der herum,
die angegebenen Offsets entsprechen den IOs der Archivinformationen (je 430), doch was macht die SL.EXE da genau ?
Ein 'debuggen' zeigt merkwürdige Einträge, leider bin ich selber nicht in der Lage, das Log richtig zu deuten :
Immer wiederkehrende Einträge (ist das die 'Hängschleife' ?) in der debug_sl.txt:
7392: fwapi.cpp(6400): UserName= (ist WIRKLICH leer)
7392: fwtools.cpp(776): SetUserOnlineCount: OnlineCnt=1
7392: TCPIPDV.CPP(1215): ListenThread: Thread returned from accept
7392: TCPIPDV.CPP(260): ReadThread: ReadThread gestartet
7392: fwapi.cpp(6400): UserName=
7392: fwtools.cpp(776): SetUserOnlineCount: OnlineCnt=1
7392: TCPIPDV.CPP(1215): ListenThread: Thread returned from accept
7392: TCPIPDV.CPP(260): ReadThread: ReadThread gestartet
7392: fwapi.cpp(6400): UserName=
7392: fwtools.cpp(776): SetUserOnlineCount: OnlineCnt=1
7392: TCPIPDV.CPP(1215): ListenThread: Thread returned from accept
7392: TCPIPDV.CPP(260): ReadThread: ReadThread gestartet
7392: fwapi.cpp(6400): UserName=
Seltsam sind auch diese Einträge :
7392: CONTROL.CPP(1472): CheckRXFile: Betreffzeilentexthier sr->FileName=\\SERVER\DAVID\tld\port\extra\007837EB sr->AktLine=0
7392: VERTEIL.CPP(118): CheckNameing sender@fremd.dom
7392: VERTEIL.CPP(920): CheckVerteilung
7392: VERTEIL.CPP(348): FindRoutingRecord: reciepient@myd.dom
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 12252
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 21247
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: recipient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 22151
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 22434
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 31188
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 32143
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 32680
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 42214
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 42222
7392: NRBUCH.CPP(100): TVer_CmpRec: r1: reciepient@myd.dom
7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 42680
7392: VERTEIL.CPP(930): VR.ArchivePath=~E
7392: TCPIPDV.CPP(1215): ListenThread: Thread returned from accept
7392: TCPIPDV.CPP(260): ReadThread: ReadThread gestartet
7392: fwapi.cpp(6400): UserName=
7392: fwtools.cpp(776): SetUserOnlineCount: OnlineCnt=1
......
EDIT: doch habe ich was vergessen :
Zu 7392: NRBUCH.CPP(101): TVer_CmpRec: R2: 42214
bei der 42214 handelt es sich um eine interne Faxnummer, die Nummern
sind im DViSE Admin unter "Verteilregeln" eingetragen,
drei dieser in der Liste auftauchenden Verteilregeln waren mit fehlerhaften Pfade versehen,
der Rest ist okay und funktional. /EDIT
Ich hoffe, keine Info vergessen zu haben, wir sind ein bissl ratlos.
Unser aller Liebling Tobit.Software verkauft 5000 (!!!)er Lizenzen, hat jemand
mal einen DAVID Server mit 5000 Usern gesehen ?
Gruß aus dem Sumpfloch,
Chris