Skip to content
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

Benchmark hsnsq and nsq performance #5

Open
pharaun opened this issue Oct 18, 2014 · 2 comments
Open

Benchmark hsnsq and nsq performance #5

pharaun opened this issue Oct 18, 2014 · 2 comments

Comments

@pharaun
Copy link
Owner

pharaun commented Oct 18, 2014

We want to identify what the performance curves are for nsq so that we can decide if we should use it as a way to stream assets to the client or not.

The basic idea here is to have the standard two dimension benchmark in which:

  1. X axis is the send-rate (ie 1msg/sec, 10msg/sec, etc...)
  2. Y axis is the message-size (ie 1kb, 10kb, etc...)

Then in each message upon sending we will record the following 3 items:

  1. Sequal id (to identify dropped/lost messages)
  2. Timestamp of send-time
  3. Gibbish for the rest of the message (from a block of memory for dma/mmap speed)

Then upon reception we will record the time the message was received, and record the send-time and sequal id to a csv/logfile for further analysis.

Should be able to make a binary that provides us with a few options such as send rate, message size, and so on for the initial benchmark effort. Binary provided options:

  1. hostname/ip to connect to for nsq
  2. port to connect to for nsq
  3. count of messages to send
  4. send-rate in msg/sec
  5. message size in kilobytes (min of 1-4kb)
  6. RDY size (we are doing 1 for now but should be able to bump this up)
@cantsin
Copy link

cantsin commented Oct 18, 2014

👍

@pharaun pharaun self-assigned this Oct 19, 2014
@mreiferson
Copy link

in case you're curious of pure nsqd performance (not specific client libraries) I recently finished up this distributed benchmark automation script, see nsqio/nsq#438

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

No branches or pull requests

3 participants