Yet another thread that I caught late. Sorry, but this time someone stole my car (seriously), so I'm a bit behind on a number of things today.
However event-based architecture is one subject one which I not only have opinions but actually have some decent experience! Leo Simons wrote: > In summary, message-based systems are difficult. Yes. I've been using JMS for over three years now. We adopted the technology here pretty early and we used it in rather unusual ways. JMS makes up the backbone of our Java desktop applications. That's right, desktop. We have a small JMS server (now using OpenJMS in Merlin) that runs in the background on each of our client PCs. Only recently have we considered using JMS over the actual intranet. Part of the decision to use JMS came from having services (actual Windows NT services) which need to run always and desktop apps which can be started and stopped at any time. We needed a good reliable way to queue messages and guarantee delivery and JMS's durable subscriber model solved that perfectly. As others have mentioned, when you move to an event based system, you trade dependency on API's in for dependency on data. That means selecting your data model is VERY important. We ended up using a map scheme with XML and plain old java implementations. Handing the event topology can be a little tricky as things grow. You have to keep track of who knows what and when. Most of our events are asynchronous. When we started trying to handle reply-request schemes we eventually decided on going back to the API approach. It was just less complicated and performed better. My favorite mix is to use AltRMI for remote service requests and JMS for events. It's even better if you come up with a way to hide service location (ie- don't know if your looking up the components with AltRMI or just via the normal ServiceManager). Part of my idea for PhoenixMDS was to develop Message Based Services (MDS) which would allow you to easily convert your Avalon component into a JMS consumer. Essentially what you would get would be Avalon-based Message Driven Beans, which are the only part of the EJB spec which I like. I've been thinking about rewriting the code here as a JMS extension for Merlin. Anyway, I've still got to finish reading this thread, figure out if I'm going to have to buy a new car, and actually try to get some work done. I'm sure I'll have more to say later. J. Aaron Farr SONY ELECTRONICS DDP-CIM (724) 696-7653 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
