If your application is using a generic or application userid - that is, the user id identifies the web application server, not the web users - then you can pool the Broker connection object.
If you are using a user specific connection, then you probably don’t want to pool the Broker objects, but keep them solely within the user’s session context. Each user should have their own Broker/Service objects and do a logon/logoff to establish and preserve their credentials.
EntireX Security can validate the logon against the Broker’s host operating system security - Unix security, in your case.
In any case, a timeout can happen if the objects are cached within the session, depending on the session timeout value versus the Broker timeout (conversation and client non activity timers). From what you have described, you would probably want the client non activity timer in Broker to be slightly greater than the web application session timeout value. If you are not using conversations (typically the case for web applications), then a small conversation time out value is usually appropriate, around 1 to 5 minutes - use the larger values only if a given call can requires longer time.
An option that reduces the resources required in the Broker is to use shorter timeouts, but add code to the application to handle the timeout errors (the specific error varies depending on the client wrapper) and do a silent re-login if needed. The Java Wrapper API includes this as an option (Broker.autoLogon method).
#webMethods#Mainframe-Integration#EntireX