Skip to content

igorjava2025/rqueue-priority-load-test

Repository files navigation

Project for load test of rqueue queues with priority
Prepared for github issue reproducing
sonus21/rqueue#276

Run " .\gradlew clean build" to build project.
Check that file "build/libs/rqueue-priority-load-test-1.0.0.jar" was created.
Run docker-compose.yml file for application start with Redis database.

Application success logs are turned off by default.
Add this to java start cmd in docker-compose file if you want to see application success logs:
-Dlogging.level.rqueuepriorityloadtest=DEBUG

Check local application work via http request:
- send message to queue with high priority:
curl -X POST 'http://localhost:8080/load-test' -H 'Content-Type: application/json' -d '{"priority":"HIGH"}'
- send message to queue with medium priority:
curl -X POST 'http://localhost:8080/load-test' -H 'Content-Type: application/json' -d '{"priority":"MEDIUM"}'
- send message to queue with low priority:
curl -X POST 'http://localhost:8080/load-test' -H 'Content-Type: application/json' -d '{"priority":"LOW"}'

Setup Apache JMeter to start load test file "load_test.jmx" (just open jmx file and start it via Apache Jmeter desktop UI)

Install Redis client to check Redis database data (for example, "Another Redis Desktop Manager" client).

Install Prometheus to collect metric data. Install Grafana to visualize metrics. More about it there https://www.baeldung.com/spring-boot-prometheus After grafana datasource will be set you can import dashboard import file "grafana-dashboard-file-for-import.json" (maybe with minor updates for datasource id) that contains necessary metric visualization for load test research.

About

Project with load test of rqueue queues with priority

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages