Our main HIS inbound thread is in the same process as all of the outbound threads that are referenced as destinations for that inbound thread’s routing. An option we are thinking about is to group all inbound and outbound threads for the same ancillary in their own process, and have a separate process to hold the main HIS inbound thread.
Using the current configuration means that recycling the main inbound thread will also stop all of the connections to all the ancillaries. But I heard of problems occurring years ago, with keeping related inbound and outbound threads in separate processes. However I don’t know what those problems are. Perhaps there were problems but these were fixed in newer releases of Cloverleaf.
Possibly performance could change if outbound threads are moved into a different process, because then messages must flow across machine processes? Maybe there is more I/O processing taking place? But our machine is nowhere near maxed out so we probably would not notice it.
Also, if all inbound and outbound threads for an ancillary are grouped into a process, then all connections must be recycled if the process is recycled. This seems like a ‘six of one, half dozen of another’ type of comparison?
If we switch to a new HIS, which seems likely in about two years, we may need to support both old and new inbound threads for a while, and maybe having separate, inbound-only processes will help.
Any thoughts?
Peter Heggie
PeterHeggie@crouse.org