performance-docs/doc/source/test_plans/mq/simulator.rst
Ian Wienand a3f90db284 Replace openstack.org git:// URLs with https://
This is a mechanically generated change to replace openstack.org
git:// URLs with https:// equivalents.

This is in aid of a planned future move of the git hosting
infrastructure to a self-hosted instance of gitea (https://gitea.io),
which does not support the git wire protocol at this stage.

This update should result in no functional change.

For more information see the thread at

 http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003825.html

Change-Id: Ibf57ccd514b35dd31d9a8482aaab2b0b845d0d5f
2019-03-24 20:35:35 +00:00

3.0 KiB

Oslo.messaging Simulator

This section describes how to perform message_queue_performance with Oslo.messaging Simulator tool.

Test environment preparation

To perform the test plan you will need to install oslo.messaging simulator.

The simulator tool depends on SciPy library which requires some mathematical packages to be installed into system.

To install on CentOS 7:

# yum install lapack-devel

To install on Ubuntu 14.04:

# apt-get install liblapack-dev gfortran

The simulator is distributed as part of library sources. It is recommended to be installed within virtual environment.

$ git clone https://git.openstack.org/openstack/oslo.messaging
$ cd oslo.messaging/
$ virtualenv .venv
$ source .venv/bin/activate
$ pip install -r requirements.txt
$ python setup.py install
$ pip install scipy
$ cd tools/

Test Case 1: RPC Call Throughput Test

Test case specification: message_queue_performance_rpc_call

Execution:

Start the server:

$ python simulator.py --url rabbit://<username>:<password>@<host>:<port>/ rpc-server

example: python simulator.py --url rabbit://nova:DUoqsyrq@192.168.0.4:5673/ --debug true rpc-server

Start the client:

$ python simulator.py --url rabbit://<username>:<password>@<host>:<port>/ rpc-client -p <threads> -m <messages>

example: python simulator.py --url rabbit://nova:DUoqsyrq@192.168.0.4:5673/ rpc-client -p 10 -m 100

Test Case 2: RPC Cast Throughput Test

Test case specification: message_queue_performance_rpc_cast

Execution:

Start the server:

$ python simulator.py --url rabbit://<username>:<password>@<host>:<port>/ rpc-server

example: python simulator.py --url rabbit://nova:DUoqsyrq@192.168.0.4:5673/ --debug true rpc-server

Start the client:

$ python simulator.py --url rabbit://<username>:<password>@<host>:<port>/ rpc-client --is-cast true -p <threads> -m <messages>

example: python simulator.py --url rabbit://nova:DUoqsyrq@192.168.0.4:5673/ rpc-client --is-cast true -p 10 -m 100

Test Case 3: Notification Throughput Test

Note

Version at least 2.9 is required to run this test case.

Test case specification: message_queue_performance_notification

Execution:

Start the server:

$ python simulator.py --url rabbit://<username>:<password>@<host>:<port>/ notify-server

examples:: python simulator.py --url rabbit://nova:DUoqsyrq@192.168.0.4:5673/ notify-server

Start the client:

$ python simulator.py --url rabbit://<username>:<password>@<host>:<port>/ notify-client -p <threads> -m <messages>

example: python simulator.py --url rabbit://nova:DUoqsyrq@192.168.0.4:5673/ notify-client -p 10 -m 100