PDA

View Full Version : TCP/IP



DEVJO
05-10-06, 11:14
Hallo,

mal wieder eine Frage zum Thema TCP/IP!

Situation:
Wir haben eine Permanente Verbindung zu einem Systemhaus, von welchem eine Verbindung zu uns aufgebaut wird. Diese Verbindung wird gelegentlich wieder abgebaut und kurz daruf wieder aufgebaut!
Nun steht unsere Application weiterhin am Socket und wartet auf ankommende Datensätze, welche allerdings nicht auf dem Socket auftauchen, sondern irgendwo ins Nirvana laufen.
Dieser Abbau wird von unserer AS/400 registriert. Wo kann ich diesen "Eintrag" finden, bzw. abrufen.

Ziel ist es das Protokoll sekündlich/minütlich zu prüfen, ob die Verbindung abgebaut wurde um dann die Application neu zu starten!

Frage:
Ist das möglich? Wenn ja, wie?

Dank:
An alle, die eine Antwort wissen

kuempi von stein
05-10-06, 12:52
Hello,

das Problem kommt mir absolut bekannt vor.
Wir haben auch diverse Sockets und nur mit einem Kunden gibt es ähnliche Probleme.

Da jeder Datensatz von uns zurückbestätigt wird, merken die auf der anderen Seite wenns klemmt.

Leider schlafen die manchmal und dann merkt es keiner!

Wir haben uns damit beholfen, einen Prüfjob auf die ankommenden Datensätze laufen zu lassen und da da intern auch die Uhrzeit mit abgespeichert wird, schlägt der Prüfjob dann eben Alarm bzw. killt den Job und startet ihn dann neu wenn eine gewisse Zeit nix passiert.

Wenn Du das Problem lösen kannst, würde mich interessieren wie man das in den Griff bekommt!

kuempi

Fuerchau
05-10-06, 13:12
Das Problem kenne ich auch in anderer Beziehung. Wir haben uns mit einem Überwachungsjob beholfen.
Per PING befehl wird die Verbindung überprüft.
Allerdings gibts kein MONMSG falls was schief geht.
Man muss sich dann die letzte Nachricht per RCVMSG holen, auswerten und entsprechend reagieren.

Allerdings verstehe ich da die Warte-APP nicht.
Gib dem Wartebefehl doch einen Timeout mit und schicke einen Testrequest an deinen Partner. Wenn der nicht mehr reagiert, ist eben unterbrochen.

Ein PING hilft ja auch nicht, da die Verbindung ja nur kurz weg ist.

Das ist halt so mit IP, man muss da immer selber aktiv werden.

Das beste Beispiel sind doch diese Warenkörbe im Internet.
Auch hier gilt für die APP, wenn ich eingeschlafen bin, wird die Sitzung remote gekillt und ich krieg den Hinweis "Sitzung nicht mehr gültig".