The point I'm making is that you wouldn't do it that way (demarcate 
logon/logoff).
A user can logon and not do anything. You are wasting resources.

Instead you would allocate a connection for a unit of work (e.g. 
upload/download some files).
For each unit of work, you would "reauthenticate" based on the CRI or Subject.

That way you get maximum sharing of connections and you don't have
unused connections lying around when they are not being used.
The number of open connections is directly related to the number of active 
units of work,
not the number of SFSBs a lot of which could be idle.

This would be most efficient if the backend supports something like session 
suspension
as some telnet servers do.
Related to that is (if you are writing the back end yourself), you would be 
better using the
XAResource interface and storing the session against the XID on the backend 
server.
That way you can use "interleaving" where you start the session on one 
connection
suspend it (close() - returning the connection to the pool for somebody else to 
use) 
and resume it on a different physical connection  (or the same connection) 
when you need it again.

e.g. psuedo code

  | ConnectionFactory cf = ...
  | Connection c = cf.getConnection(); // Allocate connection from pool - start 
the session - XAResource.start(xid, TMNOFLAGS);
  | Object data;
  | try
  | {
  |    data = c.download();
  | }
  | finally
  | {
  |    // Return the connection to the pool - suspend the session - 
XAResource.suspend(xid);
  |    c.close();
  | }
  | 
  | // Do some long running process, we don't need to have the connection for 
this
  | // so let somebody else use it!
  | Object result = calc(data);
  | 
  | Connection c = cf.getConnection(); // Reget a connection - resume the 
session - XAResource.start(xid, TM_RESUME);
  | try
  | {
  |    c.upload(result);
  | }
  | finally
  | {
  |    c.close();
  | }
  | 

Finally, you also have greater ability to reap connections that are idle during 
low load periods.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4055663#4055663

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4055663
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to