Author |
Message
|
vijpan |
Posted: Wed Aug 09, 2006 5:04 pm Post subject: Workflow Session Management - Best way |
|
|
Novice
Joined: 14 Feb 2005 Posts: 22
|
Workflow 3.6
We are have a 3 tier set up for the MQ workflow and will also be introducing client concentrator.
We are building a custom web application and there will be around 700 to 800 users who will be using this application. Around 20% of the work done by these users wil be workflow related, where they search for the workitems and then they deal with some business screens, and on some conditions we will trigger a call to workflow where the workitem will be started -- which will trigger a UPES program and if exit condition staisfies, the control moves to another activity.
My question is how do we really manage session management for these users.
a) Do login/logoff for every request -- wont this have negative performance?
b) Or just do the login once and then pool that session and logoff only when users logoff or when the web session times out ( workflow logoff can then be executed through http session listener -- if the user closes the browser or http session has timed out)
Will 800-900 workflow session be too much to manage as a pool.
Thanks |
|
Back to top |
|
 |
kotha |
Posted: Wed Aug 09, 2006 6:20 pm Post subject: |
|
|
Partisan
Joined: 12 Mar 2005 Posts: 333
|
a) Do login/logoff for every request -- wont this have negative performance?
My answer is NO. |
|
Back to top |
|
 |
hos |
Posted: Thu Aug 10, 2006 1:05 am Post subject: |
|
|
Chevalier
Joined: 03 Feb 2002 Posts: 470
|
Quote: |
a) Do login/logoff for every request -- wont this have negative performance? |
I object. My answer is YES.
However it is a tradeoff. But 600 sessions are not a big deal for MQWF or MQ. |
|
Back to top |
|
 |
vijpan |
Posted: Thu Aug 10, 2006 8:53 pm Post subject: |
|
|
Novice
Joined: 14 Feb 2005 Posts: 22
|
any more views from grand masters
Thanks |
|
Back to top |
|
 |
ryro |
Posted: Fri Aug 11, 2006 12:07 am Post subject: |
|
|
 Novice
Joined: 22 May 2006 Posts: 14
|
Having dealt with this problem already in a similar system (similar load on a 3-tier), login/logoff with accompanying checkIn/checkOut requests can definitely affect performance negatively (and sometimes significantly).
What was tried initially is to create a single log on (and a ForceFinish instead of the checkIn/checkOut), and reuse that session, which does work well (reducing load from 3 calls to one relatively cheap call), but encountered some oID error, that IBM is still trying to figure out.
It was then changed to use a a session pool instead, and if all the sessions were used up, a new session would be created. And this has worked well. |
|
Back to top |
|
 |
vijpan |
Posted: Fri Aug 11, 2006 7:48 pm Post subject: |
|
|
Novice
Joined: 14 Feb 2005 Posts: 22
|
Hi Ryro thanks for the reply.
So did you maintain this pool for some kind of default user and used that default user to do all kind of activity, or did you maintain the session for each user, means login once and then use it all the time until and unless the user logs off. |
|
Back to top |
|
 |
ryro |
Posted: Wed Aug 16, 2006 4:14 am Post subject: |
|
|
 Novice
Joined: 22 May 2006 Posts: 14
|
Quote: |
did you maintain this pool for some kind of default user |
Yes. Logged on with an AUTO user. The sessions are only used when activity is requested, else it is idle. If it occured that there are not enough sessions (i.e. all the sessions are in simultaneous use - perhaps only during peak times), a new one is created and added to the pool, until such time as the system is brought down. When the system is brought up, the original number of sessions are created with no additional sessions that were added previously. |
|
Back to top |
|
 |
vijpan |
Posted: Wed Aug 23, 2006 9:19 am Post subject: |
|
|
Novice
Joined: 14 Feb 2005 Posts: 22
|
Quote: |
Yes. Logged on with an AUTO user. |
So did you maintain the pool of the AUTO user along with its sessionID and then created the ExecutionService object as and when needed, or did you maintained the pool of the "ExecutionService" objects which are associated with the AUTO user. |
|
Back to top |
|
 |
ryro |
Posted: Sun Aug 27, 2006 10:19 pm Post subject: |
|
|
 Novice
Joined: 22 May 2006 Posts: 14
|
Quote: |
...did you maintain the pool of the AUTO user along with its sessionID and then created the ExecutionService object as and when needed... |
Yes |
|
Back to top |
|
 |
|