I grew in the faith that a Publish (one way) operation would be carried in a separate thread form the calling thread, even much so when you use QoS = Best Effort and no transactions.
Here http://docs.oracle.com/cd/E23943_01/admin.1111/e15867/modelingmessageflow.htm#OSBAG181 at chapter 37.12.1.3 it says:
I tried from a HTTP ServiceA to do:
In ALL cases, much to my surprise, the same thread was executing both ServiceA and ServiceB.
Here http://docs.oracle.com/cd/E23943_01/admin.1111/e15867/modelingmessageflow.htm#OSBAG181 at chapter 37.12.1.3 it says:
The Oracle Service Bus threading model works as follows:
The request and response flows in a proxy service execute in different threads.
Service callouts are always blocking. An HTTP route or publish action is non-blocking
(for request/response or one-way invocation), if the value of the qualityOfService
element is best-effort.
JMS route actions or publish actions are always non-blocking, but the response
is lost if the server restarts after the request is sent because Oracle Service Bus
has no persistent message processing state.
I tried from a HTTP ServiceA to do:
- a service callout
- a publish
- a route
In ALL cases, much to my surprise, the same thread was executing both ServiceA and ServiceB.