answers in-line and added to the FAQ
http://qpid.apache.org/faq.html



gregory james marsh wrote:


Hello,

A few questions on broker worker threads:

--worker-threads N (9) Sets the broker thread pool size



1. Could someone provide a brief description of the worker thread duties in the current Qpid release? I've read over the document:


The broker uses IO threads for all the work it does. This means that when work is signalled via an event (socket, RDMA, timer) an IO thread is scheduled and it runs until it completes the work and then returns back to the IO thread pool. This allows the CPUs to be utilized efficiently. The general rule is that we allocate 1 thread per core +1. So on a 8 way machine you see worker-threads default to 9. On a 4 way it will be 5. Sometimes it if work changing the default allocation if:

a.) you run on high core count machine >8 to a lower number
b.) if you taskset, then set to the cores allocated +1





http://qpid.apache.org/qpid-design-threading.html

This mentions that threading allows the following to take place in parallel:
    * network reading and writing for a given session
    * data decoding and routing
    * response encoding

Is this still current and accurate?

Concurrency in the broker is at the session level. So yes. If you want more concurrency, create another session on the same connection.



2. How are worker threads allocated to individual client sessions if there are more clients than threads in the pool?

They are not allocated to a specific client



3.  Why was the number 9 chosen as the default number of worker threads?

see above.



4. We experimented by setting the number of threads to 8 to match the number of cores on our broker node. We saw no significant change in performance from the default 9. Are there any recommendations in regard to aligning the number of worker threads to the number node cores?


2-8 CPU's cores +1
8> depends on hardware, but in most cases 8 limiting threads starts being faster.





---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to