Skip to content

Instantly share code, notes, and snippets.

@Dieterbe
Created August 18, 2015 13:45
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Dieterbe/2fd593c988d0fc8f796a to your computer and use it in GitHub Desktop.
Save Dieterbe/2fd593c988d0fc8f796a to your computer and use it in GitHub Desktop.
# start nsqd:
nsqd -max-msg-size=10024768 -sync-every=1 --mem-queue-size=0 -e2e-processing-latency-percentile=0.90,0.99 -e2e-processing-latency-window-time=10s -statsd-address=localhost:8125 -statsd-interval=10s
# start consumer:
nsq_tail -nsqd-tcp-address=127.0.0.1:4150 -topic=test -channel=nsq_tail > /dev/null
# start producer when ready:
while true; do head -c 600000 /dev/zero|tr '\0' 'A'; echo; done | to_nsq -nsqd-tcp-address=127.0.0.1:4150 --topic=test
## results:
* no errors, no timeouts!
* timeline & measurements:
15:24:00 start nsqd and nsq_tail
15:25:00 start to_nsq. -> 0 msg
15:27:00 kill nsq_tail -> 43500 msg
15:29:00 wait -> 48860 msg, 3380 in nsq_tail disk queue
15:31:00 wait -> 54380 msg, 6755 in nsq_tail disk queue
15:33:00 restart nsq_tail -> 59592 msg, 9950 in nsq_tail disk queue
15:35:00 wait -> 81700 msg, 6100 in nsq_tail disk queue
15:37:00 wait -> 104800 msg, 2500 in nsq_tail disk queue
15:39:00 finish -> 130000 msg, 0 in nsq_tail disk queue
conclusions:
- in normal mode, 43500 messages in 120s = 362 msg/s (at 200B per metric, is equivalent to 1M metrics per second)
- in degraded mode, 5000 messages in 120s = 41 msg/s (equivalent to 123k metrics per second)
- in recovery mode, 22000 messages in 120s = half of normal mode
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment