New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MQTT: Mosquitto broker queue test #5

Open
wants to merge 8 commits into
from

Conversation

Projects
None yet
3 participants
@jrbenito
Contributor

jrbenito commented Aug 29, 2013

Hi Stephen,

If you want to take a look and compare, I wrote some code to test_client.py and also a mqtt_pubsub.py wrapper in order to include MQTT protocol to the comparison you made. It is meant to be used with Mosquitto broker.

I run a test on a Ubuntu 12.04 64 bits, Intel Core2quad Q9550. Everything installed as your Readme suggests, Redis and Mosquitto from official Ubuntu repository with default configuration. My results point out that ZeroMQ is still quicker and that it takes advantage (like redis) from multiple core while Mosquitto is still quicker than Redis its results clearly shows that broker is not multi-core aware. I will run this on another machine, a Phenon X4/X6 to have something to compare with.

Anyway, I had not so experienced with python and if someone finds any issue with mqtt_pubsub.py I will gladly merge corrections. I have no experience with Go language so I still did not write any Go client to Mosquitto.

Thanks for your work, I would not get so far without your original code. This study will be decisive in a research I am conducting here.

Regards,
Benito.

jrbenito added some commits Aug 28, 2013

Mosquitto support
File was based on zmq_pubsub, now most converted to use Mosquitto.
Still need to implement listen function.
Test Function for subscribe
-still need to rewrite listen method.
Mosquitto: Python draft completed
Instead of rewriting listen function, wrote a blocking recv function
to behave similar as ZeroMQ recv.
Mosquitto: Test client is able to run it
Rewrite the subscribe to avoid error when subscribing. This allowed
listen to work correct with test_client script.
MQTT: Bench support for Mosquitto client
Bench now runs test_client with "--mqtt" option and plot results
together ZeroMQ and Redis results
Bench: put output path in .dat files for gnuplot
Gnuplot was not working while running bench.py. The .png files were
being generated as null. The fact is bench.py was calling gnuplot
from working directory and not from output directory. The result was
gnuplot did not find that .dat files with data to plot.

This fix avoids manual generation of .png file by issuing gnuplot
command inside output directory.
@stephenmcd

This comment has been minimized.

Show comment
Hide comment
@stephenmcd

stephenmcd Aug 29, 2013

Owner

Awesome! Thanks a lot for sharing this. Like the other contributions, I won't actually merge this into the repo - but I'll link to it from the README and in the blog post as well for anyone who's interested. Great stuff.

Owner

stephenmcd commented Aug 29, 2013

Awesome! Thanks a lot for sharing this. Like the other contributions, I won't actually merge this into the repo - but I'll link to it from the README and in the blog post as well for anyone who's interested. Great stuff.

@marton78

This comment has been minimized.

Show comment
Hide comment
@marton78

marton78 May 19, 2016

Can anyone post the results of this test here?

Can anyone post the results of this test here?

@jrbenito

This comment has been minimized.

Show comment
Hide comment
@jrbenito

jrbenito May 19, 2016

Contributor

@marton78 ,

this was done long time ago, I don´t have results anymore. Consider run it by yourself, the setup is pretty simple. Keep in mind that mosquitto broker had evolved ever since and results may differ.

rgds,
Benito

Contributor

jrbenito commented May 19, 2016

@marton78 ,

this was done long time ago, I don´t have results anymore. Consider run it by yourself, the setup is pretty simple. Keep in mind that mosquitto broker had evolved ever since and results may differ.

rgds,
Benito

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment