A package to enqueue a variable number of jobs with variably distributed TIME x CPU "areas"
rqpop uses the python package stressypy to create a certain number of cpu-stressing jobs for a variably distributed amount of time, the distribution type and seed being specified by the user. It creates stressypy’s JobBlock objects which contain pertinent information for queueing these test jobs to test queueing algorithms by enqueueing a certain number of randomly ‘sized’ jobs, which simulates the real job influx of a webservice, for example. The jobs are enqueued with RQ (Redis Queue).
refer to https://github.com/salbrandi/stressypy#jobblock-attributes for documentation on JobBlock objects
rqpop can be installed with pip install rqpop and will auto-install all dependencies.
Alternatively, it can be cloned manually from the url: https://github.com/salbrandi/rqpop.git or the tarfile can be downloaded from the url: https://github.com/salbrandi/rqpop/archive/0.1.tar.gz and setup with python setup.py install
rqpop runs using the command rqpop queue with the number of jobs desired and the max time allowed being passed as arguments.
The help page:
Distributions supported are:
Log Normal: normal - default
- rqpop queue 10 12 --seed 0 --distribution normal:
creates and enqueues 10 jobs normally distributed with seed 0 and a max time of 12 seconds
- rqpop queue 21456 --seed 1023041 --distribution power --mnc 2 --mxc 10 -q high:
creates and enqueues 21, 456 jobs exponentially distributed with seed 1023041, min cores 2, max cores 10 on the queue ‘high
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.