myelin/queueing-playground
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
queueing-playground =================== Phillip Pearson <pp@myelin.co.nz> http://github.com/myelin/queueing-playground Here's some code I've been using to experiment with RabbitMQ recently. Dependencies ============ py-amqplib: http://barryp.org/software/py-amqplib/ QPid: http://cwiki.apache.org/qpid/ Usage ===== Create a config.txt file, like this, in the same directory as this README: host = hostname of your rabbitmq server port = 5672 user = your rabbitmq username password = your rabbitmq password exchange = tempexch queue = tempqueue durable = true ssl = false Then try running some of the Python scripts in python/qpid and python/amqplib. Try changing the 'durable' line to 'durable = true' (and changing the 'exchange' and 'queue' values to something like 'durexch' and 'durqueue', as Rabbit won't let you redeclare the existing exchange as non-durable) to get a durable queue. Results ======= colinux VM using one core of a Mobile Core 2 Duo, running Debian Etch, RabbitMQ 1.4.0-1 and Erlang 11.b.2-4: py-amqplib 0.3 producer and Rabbit on same VM, non-durable queue: ~1200-1300 msgs/sec produced. basic.consume consumer and Rabbit on same VM, non-durable queue: ~150-180 msgs/sec consumed. producer, basic.consume consumer and Rabbit on same VM, non-durable queue: ~1000 msgs/sec produced, ~50 msgs/sec consumed. QPid 1.0 M2 Couldn't get basic.consume working. basic.get consumer consumes about 25 msgs/sec but without using much CPU, so I could run 20 at a time plus the py-amqplib producer (above) to produce and consume about 300 msgs/sec continuously. Athlon XP 2800+ with 1G RAM, running Debian Etch, RabbitMQ 1.4.0-1 and Erlang 1:12.b.3-dfsg-4: py-amqplib 0.5 producer and Rabbit on same box, non-durable queue: 2000-3000 msgs/sec produced (initially ~3000, dropping to ~2000 after the number of messages in the queue gets up around 20k). basic.consume consumer and Rabbit on same box: ~2100 msgs/sec consumed. producer, one basic.consume consumer and Rabbit on same box, non-durable queue: one run: ~1400 msgs/sec produced, 900-1000 msgs/sec consumed. another run: ~900 msgs/sec produced, ~700 msgs/sec consumed. No idea what is causing this difference. producer, two basic.consume consumers and Rabbit on same box, non-durable queue: ~650 msgs/sec produced and consumed. basic.get consumers manage 25 msgs/sec each, using nearly no CPU. Blog posts ========== Initial queueing experiments: http://www.myelin.co.nz/post/2008/8/4/#200808042 Queueing update: http://www.myelin.co.nz/post/2008/8/10/#200808101
About
Various scripts I've been using to benchmark queue servers
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published