On 06/27/2011 06:25 AM, Ilyushonak Barys wrote:
Hi, folks.
I have done some tests in my environment and faced with very strange behavior.
Perftest works in some times faster (average 5), than my custom code (c++
client). I'm speaking about relative value in constant environment.
The main question is: is any difference in performance between client api and
messaging api?
The perftest use client api (which deprecated after v0.6), I use messaging api.
I have goal to increase subscriber performance, so I tried varied things, like
1)
http://qpid.apache.org/books/0.10/Programming-In-Apache-Qpid/html/ch02s06.html
2) non-persistence messages
3) reliability: unreliable/at-least-once
4) using or not client acknowledge
It allowed me to increase performance in 2 times. But my client still works in
5 times slower, than perftest.
Environment:
I have clustered 0.8 c++ broker (virtual), and one workstation as a client
machine.
I use c++ client, constant message size (64 bytes) in both tests.
I did some benchmarks a while back and got similar performance for both APIs.
The new API has some slower settings by default but once all the parameters are
tweaked it's about the same.
I was comparing:
qpid_cpp_benchmark --receive-option link:{reliability:unreliable} --repeat 5
--messages 100000 --no-timestamp
perftest --count 100000 -s
qpid_cpp_benchmark is a python script that runs C++ clients qpid-send and
qpid-receive. You can find them all in Qpid SVN:
https://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/src/tests/
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]