Jump to content

ISAPI and UniGUI Session -> best practice in IIS


Recommended Posts

Hello UniGuys,

 

I have some questions about the configuration of a unigui isapi modul in IIS (7.5, or 8.0).

 

in the log of my deployed dll i find entries like this:

adm: 00002FD0: 10:25:13 [HttpExtensionProc[31.25.121.236]]:EUniSessionException : Invalid session or session Timeout. : Addr: $01EFDC44
adm: 00000DFC: 10:36:41 [HttpExtensionProc[31.25.121.236]]:EUniSessionException : Invalid session or session Timeout. : Addr: $01EFDC44

i set my Application pool in IIS with following settings (Process Model):

idle Timeout (minutes) -> 2
Idle Timeout Action -> Terminate

so after 2 minutes nobody do a request to this process it will be terminated. In live envirement this will be of course a longer period
.

Recycling Condition - Fixed Intervalls:

Regular time intervals in minutes -> 480

So all 480 Minutes all processes of this application pool gets reloaded.

 

 

i set my Servermodule Settings to following:

SessionTimeout -> 600000
soRestartSessionOnTimeout -> true

I assume that if a Worker process on the IIS get terminated, that will also kill the unigui session. if a user do some action after the worker process is terminated, a new worker process is created who doesn't now anything about the unigui session. Right?

 

Whats about configuring the application pool as a webgarden? That means that the isapi module is loaded in serveral worker processes parallel and the IIS decides which process is used for a request.

 

So you see, i am a bit confused about the rigth way to deploy a unigui isapi dll. And i definitly know less about the Session model in unigui.

 

Maybe somebody can me explain me how i should go to get optimal settings for unigui session and for IIS worker process?

 

 

 

 

post-1520-0-75527400-1439455894_thumb.png

Link to post
Share on other sites
  • Administrators

Hello UniGuys,

 

I have some questions about the configuration of a unigui isapi modul in IIS (7.5, or 8.0).

 

in the log of my deployed dll i find entries like this:

adm: 00002FD0: 10:25:13 [HttpExtensionProc[31.25.121.236]]:EUniSessionException : Invalid session or session Timeout. : Addr: $01EFDC44
adm: 00000DFC: 10:36:41 [HttpExtensionProc[31.25.121.236]]:EUniSessionException : Invalid session or session Timeout. : Addr: $01EFDC44

i set my Application pool in IIS with following settings (Process Model):

idle Timeout (minutes) -> 2
Idle Timeout Action -> Terminate

so after 2 minutes nobody do a request to this process it will be terminated. In live envirement this will be of course a longer period

 

 

uniGUI internally manages session lifetime cycle. IIS should not be adjusted to unload your process when it is idle. uniGUI sessions are not stateless so even when there are no request there can be active sessions. Set the Idle Timeout to 0 (Zero)

.

Recycling Condition - Fixed Intervalls:

Regular time intervals in minutes -> 480

So all 480 Minutes all processes of this application pool gets reloaded.

 

Again do not adjust IIS to recycle your uniGUI dll. It can interrupt active session or lock your server.

See our deployment guide.

 

i set my Servermodule Settings to following:

SessionTimeout -> 600000
soRestartSessionOnTimeout -> true

I assume that if a Worker process on the IIS get terminated, that will also kill the unigui session. if a user do some action after the worker process is terminated, a new worker process is created who doesn't now anything about the unigui session. Right?

 

That is correct.

 

Whats about configuring the application pool as a webgarden? That means that the isapi module is loaded in serveral worker processes parallel and the IIS decides which process is used for a request.

 

This model is not supported by uniGUI dlls.

 

So you see, i am a bit confused about the rigth way to deploy a unigui isapi dll. And i definitly know less about the Session model in unigui.

 

Maybe somebody can me explain me how i should go to get optimal settings for unigui session and for IIS worker process?

 

The right way is to disable all idle recycle/unload options  in IIS. Please see uniGUI deployment guide.

Link to post
Share on other sites
×
×
  • Create New...