# Timeout



## MQue (25. Nov 2009)

Hallo,

ich befürchte, ich habe wieder einen eher ungewöhnliche Frage und zwar mache ich einen Eintrag in die Datenbank (IP- Adresse + System.currentTimeMs()), sobald sich ein User zu meinem Server verbunden hat.
Man kann dann im Browser verschiedene Tabs öffnen und nach dem öffnen der Tabs läuft im Hintergrung eine asynchrone Kommunikation (mittels AJAX), Soweit funktioniert das ganze sehr gut, nur, wenn der User keine Tabs (nicht die Browsertabs sondern von mir programmierte Tabs) öffnet, gibt es keine Kommunikation zum Browser und nach einer gewissen Zeit wird am Server ein Timeout schlagend und trägt den User aus der Datenbank wieder aus.
Jetzt meine Frage: wenn ich den User aus der Datenbank ausgetragen habe, dann sollte bei diesem User wieder die Login- Seite angezeigt werden -> wie kann ich das am Besten machen, nach dem Austragen dem Client die Seite mit einem Server- Push senden geht ja nicht also müsste ich den Browser bei der nächsten Anfrage gleich die Login- Seite senden,
Hättet ihr einen Vorschlag wie man das vernünftig lösen kann?
Besten Dank,
lg


----------



## MQue (25. Nov 2009)

Ok, ich nehme mal an, dass es keine Möglichkeit in dieser Richtung gibt,
lg


----------



## FArt (25. Nov 2009)

keep alive javascript - Google-Suche


----------



## Noctarius (25. Nov 2009)

Alternativ nicht direkt auf der Session selber arbeiten, sondern eine Art eigene Session bauen und persistieren. Erkennung machst du dann per eindeutiger ID, welche bei jedem Request mitgesendet wird.

Damit kannst du "Sessions" nahezu ewig aufhalten (solange die Anwendung nicht neugestartet und eine neue eindeutige ID generiert wird)

PS: So ungewöhnlich ist die Frage nicht, unser System braucht eine ähnliche Funktionalität um sicherzustellen, dass weder Sessionablauf (bei verlorener Inet Verbindung) noch IP-Wechsel Probleme bereiten beim Commit.


----------

