In order to meet our scalablity requirements, I need better concurrency in our MBeans. Currently we're using the MBean notification mechanism in a sort-of chain of responsiblity pattern where each component listens for specific notifications, does it thing and then fires another notification when it's done (for other MBeans to listen to and repeat the process). This works very well for us, but since MBean notifications are simply method calls, everything is single threaded.
What I'd like to do is have the JMX notifications fired in a separate threads, similar to how AWT fires events. There'd be an notification queue and as worker threads became available, notifications would be fired in separate threads.
My question is has anybody done this before (since I'd prefer not to re-invent the wheel if this problem has already been solved)? Are there any open source projects or standards that address multi-threaded MBean notifications? Does anyone have any thoughts on the best way to approach this?