Hi Bill
2009-01-14 15:52:41,995 [192.168.254.153-bmajur.local]
[HttpServerWorker-1] DEBUG SendMediator Start : Send mediator
....
2009-01-14 15:52:42,131 [192.168.254.153-bmajur.local]
[HttpServerWorker-1] DEBUG SendMediator End : Send mediator
Now, the question relates to the red entry. The endpoint being sent to
looks like
<endpoint name="pub_async_sq">
<address
uri="http://ihexds.nist.gov:9080/tf5/services/xdsregistrybas"
format="soap12" trace="enable">
<enableAddressing separateListener="true"/>
</address>
</endpoint>
Note that I am using a separateListener which I understand to mean
using asynchronous web services. In this mode I expect my request to
get an immediate HTTP 200 response and then the real response message
comes in a separate connection.
The question is: Does the time stamp on the SendMediator End log
entry relate to when the HTTP 200 was received?
No, by default the http/s transports used by Synapse are non-blocking,
and the actual send operation would be via a set of dedicated IO
threads. Thus the end timestamp is the time after the request was queued
for the NIO Reactor.
My installation is working fine but a separate deployment of my
system is seeing a 1 minute delay on the receipt of the HTTP 200. I
am trying to investigate and understanding the significance of the
time stamps produced by Synapse would help a great deal.
Once a synchronous reply or error is encountered, a "ClientWorker"
thread would be given the task of processing it back through the system.
An asynchronous reply would arrive over a typical ServerWorker thread.
Basically the NIO transport uses dedicated IO threads to send/receive,
and worker threads from pools for message processing.
I hope this explains what you see, and has not confused you.. If you
have any other queries, please feel free to raise them
cheers
asankha
--
Asankha C. Perera
http://adroitlogic.org
http://esbmagic.blogspot.com