Version-Release number of selected component (if applicable): $ rpm -q qpidc qmf python qpidc-0.5.752600-5.fc10.i386 qmf-0.5.752600-5.fc10.i386 python-2.5.2-1.fc10.i386 -- time ./echo-perf.py amqp://localhost:5672 1000 1000 Found broker: org.apache.qpid.broker:broker[0-0-1-0-1152921504606846978] 0-0-1-0-1152921504606846977:5672 Iteractions: 1000 Message size: 1000 bytes Start: 1245379685.08 End: 1245379690.17 Total messages: 1000 Total time: 5.08541417122 seconds Date rate: 191.921437889 KiB/s Response rate: 196.640817509 Hz Exception in thread Thread-2 (most likely raised during interpreter shutdown): Traceback (most recent call last): File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner File "/usr/lib/python2.5/threading.py", line 446, in run File "/usr/lib/python2.5/site-packages/qpid/queue.py", line 80, in run File "/usr/lib/python2.5/site-packages/qpid/queue.py", line 50, in get File "/usr/lib/python2.5/Queue.py", line 165, in get File "/usr/lib/python2.5/threading.py", line 209, in wait <type 'exceptions.TypeError'>: 'NoneType' object is not callable ./echo-perf.py amqp://localhost:5672 1000 1000 5.59s user 0.46s system 83% cpu 7.242 total $ time ./echo-perf.py amqp://localhost:5672 1000 1000 Found broker: org.apache.qpid.broker:broker[0-0-1-0-1152921504606846978] 0-0-1-0-1152921504606846977:5672 Iteractions: 1000 Message size: 1000 bytes Start: 1245379829.39 End: 1245379834.65 Total messages: 1000 Total time: 5.26431202888 seconds Date rate: 185.506196183 KiB/s Response rate: 189.958344892 Hz Exception in thread Thread-1 (most likely raised during interpreter shutdown): Traceback (most recent call last): File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner File "/usr/lib/python2.5/threading.py", line 446, in run File "/usr/lib/python2.5/site-packages/qpid/connection.py", line 172, in run File "/usr/lib/python2.5/site-packages/qpid/delegates.py", line 37, in received <type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'channel' ./echo-perf.py amqp://localhost:5672 1000 1000 5.65s user 0.47s system 85% cpu 7.148 total $ time ./echo-perf.py amqp://localhost:5672 1000 1000 Found broker: org.apache.qpid.broker:broker[0-0-1-0-1152921504606846978] 0-0-1-0-1152921504606846977:5672 Iteractions: 1000 Message size: 1000 bytes Start: 1245379900.35 End: 1245379905.84 Total messages: 1000 Total time: 5.48216915131 seconds Date rate: 178.134324762 KiB/s Response rate: 182.409548556 Hz Exception in thread Thread-1 (most likely raised during interpreter shutdown): Traceback (most recent call last): File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner File "/usr/lib/python2.5/threading.py", line 446, in run File "/usr/lib/python2.5/site-packages/qpid/connection.py", line 168, in run File "/usr/lib/python2.5/site-packages/qpid/assembler.py", line 79, in read_segment File "/usr/lib/python2.5/site-packages/qpid/framer.py", line 154, in read_frame File "/usr/lib/python2.5/site-packages/qpid/packer.py", line 29, in unpack File "/usr/lib/python2.5/site-packages/qpid/framer.py", line 110, in read <type 'exceptions.TypeError'>: 'NoneType' object is not callable ./echo-perf.py amqp://localhost:5672 1000 1000 6.23s user 0.52s system 83% cpu 8.066 total -- echo-perf.py #!/usr/bin/env python from qmf.console import Session from sys import exit, argv import time url = len(argv) > 1 and argv[1] or "amqp://localhost:5672" count = len(argv) > 2 and int(argv[2]) or 10000 # size note: ../python2.5/../qpid/packer.py:36: DeprecationWarning: 'H' format requires 0 <= number <= 65535 size = len(argv) > 3 and int(argv[3]) or 1024 message = "1"*size session = Session(); session.addBroker(url) brokers = session.getObjects(_class="broker", _package="org.apache.qpid.broker") broker = brokers[0] print "Found broker:", broker print "Iteractions:", count # is "1" really a byte? print "Message size:", size, "bytes" start = time.time() print "Start:", start for i in xrange(count): r = broker.echo(i, message) if r.status or r.sequence != i: print "text:", r.text, "sequence:", r.sequence, "(expected:", i, ")" count = i break # if r.body != message: # print "message mismatch, received:", r.body # count = i # break end = time.time() print "End:", end print "Total messages:", count print "Total time:", end-start, "seconds" print "Date rate:", ((count * size)/1024.0)/(end-start), "KiB/s" print "Response rate:", count/(end-start), "Hz" exit(0)