If putting the outbound thread in the same process as the inbound process is undesirable for whatever reason you can still improve the throughput with what I refer to as a TCP/IP hop.
In the attached screen shot the outbound hop/send thread (hs_pahtnet_12301) is in the inbound process (ib_pahtnet_8015) and sends via TCP/IP to localhost (127.0.0.1) listener hop/receive thread (hr_12301_pathnet) which is the inbound thread to a completely different process (hr_12301_pathnet).
This architecture increases overall throughput dramatically because now both processes are able to act independently of each other.
If you are smart and limit the stuff in the inbound process and divide the work amoungst multiple outbound process groupings you will be amazed at the throughput increase.
Personally I draw the limit at 8 or nine threads in an outbound process grouping at most but less is even better, while I try to keep the inbound process groupings streamilined to one inbound thread and mostly hop/send threads or just a handfull of high priority outbound threads.
This technique is very effect when the source system owners are calling you about messages queing on their system because they are generating them faster than Cloverleaf is ACKing them.
This was the case with this site before I utilized this technique, messages backed up badly on Pathnet during peak times.
Now there is never a backup on Pahtnet and I’ve seen as many as 40 messages a second come across which is a blazing speed I could never come close to with the architecture we had when I first came to work here.
I must admit I learned of this approach by reading Clovertech and it has been one of my best finds for reliveing message flow starvation and bottle necks during my journey.
Russ Ross
RussRoss318@gmail.com