Frank Welch wrote: > > We will take a look at the thread priorities in the > HttpProcessor threads. >
That wasn't really meant to be a proposed solution, it was just the 'flavor' of the kind of thing you might end up having to do. You may not need to do anything special at all. > We have not tried anything yet, still in architecture > mode. > You may find that you need to experiment, see below. > But we have a breed of messages (Patient Requests 911, "Help > I've Fallen and I can't get up!") that we want to ensure > get processed before any normal messages. > If this is actually a life-critical system, then I don't recommend that you use Tomcat, or even Java, at least for that part of the system. The engineering requirements (as you probably know) are so different for those types of systems that industry rules-of-thumb do not generally apply. Suggestions you get on this list are probably not going to be applicable (see "soft real time" below) > I understand that Connectors will create threads for > simulaneous requests, what if the 911 request is behind > 15 other requests? > By "911" I'm going to assume you mean "business critical". The connectors pre-allocate a (configurable) number of threads. Simultaneous connections up to that number all execute, well, simultaneously, subject to the limitiations of the underlying os and hardware. The exact scheduling between three 'simultaneous' threads executing on a 2-processor system is generally impossible to determine (especially when you're using Java). Thread priorities let you give hints, but you need a real-time operating system (and some very careful programming) if you want guarantees. Business systems are generally "soft real time" (stop me if you've heard this one before) which more or less means you write the code, then fiddle with tuning params until the customers stop complaining. Almost all Java programs are written this way. If you want guarantees, see the above paragraph. If it were me, and I was feeling aggressive, I'd write enough of the system to start testing, then play with the normal Tomcat 4 Connector tuning parameters until I got close to what I wanted. If that wasn't close enough, I'd try things like playing with thread priorities, and if that didn't do it, I'd look at what thread tuning parameters were available on my O/S (locking threads to a cpu, tuning low-level priorities, etc). Oh yeah, almost forgot: all of this (except maybe the normal Tomcat connector tuning) is incredibly brittle. Small changes in your system (OS upgrade, more memory, another CPU, a different network card) can require large changes in your tuning. That's why they make real-time operating systems :-) Good luck. -- Christopher St. John [EMAIL PROTECTED] DistribuTopia http://www.distributopia.com ___________________________________________________________________________ To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff SERVLET-INTEREST". Archives: http://archives.java.sun.com/archives/servlet-interest.html Resources: http://java.sun.com/products/servlet/external-resources.html LISTSERV Help: http://www.lsoft.com/manuals/user/user.html
