Chuck,

i'd say go for it, we can always find a home for it :)

-- dims

On 5/18/06, Chuck Williams <[EMAIL PROTECTED]> wrote:


 Oleg Kalnichevski wrote on 05/18/2006 11:17 AM:
 On Thu, 2006-05-18 at 11:07 -1000, Chuck Williams wrote:


 I need some features that might not be available in a simple
implementation, primarily the ability to control a set of thread pools
assigned to different operations. E.g., I've got a bunch of quick small
operations and a few big slow ones. I need to limit the processing of
the large ones so that reading and processing the incoming messages does
not run the jvm out of memory or cause performance issues, while
allowing the small ones to get through at high priority. In general,
I'd like to be able to control the allocation of incoming messages to
threads in operation-dependent thread pools, limit the threads in the
each pool, and relatively prioritize the pools.

This might have architectural implications has the dispatching needs to
be done to determine the operation and thereby select the thread pool.
It is essential that the reading of messages be performed by the axis2
message receivers so the large ones can be streamed through. Ideally,
the sizes of the thread pools could be varied dynamically, so that for
example a particularly large message could prevent other threads from
being assigned until it completes; however, I can provide the dynamic
size-based resource control in the app even with fixed size thread
pools. Even without operation-based thread pools, so long as the
messages are not read by the http client, I could implement this
mechanism as a secondary thread assignment in the app.


HttpCore is a set of low level components focused exclusively on the
transport aspects of the HTTP protocol. HttpCore does not (and will not)
provide connection and thread pooling. We are very much welcome to
contribute these components. For a start, I'll hack up something very
simple.




 Should the facility to manage operation-dependent prioritizable thread
pools be a part of axis2?  If not already planned or being worked on by
someone else, I could provide this.  I'd like to have a general mechanism
that supports application logic to control thread allocation.

 If others think this best left out of axis2 and created by each app, then
I'll just do it for my app.

 Chuck

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


--
Davanum Srinivas : http://wso2.com/blogs/

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to