{"id":18760826,"url":"https://github.com/sarakhild/redis-performance","last_synced_at":"2026-04-28T21:33:21.356Z","repository":{"id":256738879,"uuid":"856262485","full_name":"SaraKhild/redis-performance","owner":"SaraKhild","description":"JMeter Performance Test Results for Three Redis implementations: redis, redisson, and redis-reactive.","archived":false,"fork":false,"pushed_at":"2024-09-14T19:03:34.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-29T04:51:31.220Z","etag":null,"topics":["redis","redis-reactive","redisson"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SaraKhild.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-12T09:18:45.000Z","updated_at":"2024-09-15T09:33:01.000Z","dependencies_parsed_at":"2024-09-12T21:08:29.884Z","dependency_job_id":"e2ddf516-c5df-416c-a834-2e9b1f8a3860","html_url":"https://github.com/SaraKhild/redis-performance","commit_stats":null,"previous_names":["sarakhild/redis-performance"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fredis-performance","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fredis-performance/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fredis-performance/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaraKhild%2Fredis-performance/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SaraKhild","download_url":"https://codeload.github.com/SaraKhild/redis-performance/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239653094,"owners_count":19675031,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["redis","redis-reactive","redisson"],"created_at":"2024-11-07T18:13:59.596Z","updated_at":"2025-12-03T21:30:12.707Z","avatar_url":"https://github.com/SaraKhild.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JMeter Performance Test Results for Three Redis implementations: spring-boot-starter-data-redis, redisson-spring-boot-starter, and spring-boot-starter-data-redis-reactive.\n\n\u003cbr\u003e\n\n## Overview\nThis project \u003cmark\u003ecompares the performance of three different Redis implementations\u003c/mark\u003e using JMeter: \u003cstrong\u003espring-boot-starter-data-redis\u003c/strong\u003e, \u003cstrong\u003eredisson-spring-boot-starter\u003c/strong\u003e, and \u003cstrong\u003espring-boot-starter-data-redis-reactive.\u003c/strong\u003e The tests evaluate the \u003cmark\u003ethroughput\u003c/mark\u003e, \u003cmark\u003elatency\u003c/mark\u003e, and \u003cmark\u003eresource consumption of each implementation under different load conditions\u003c/mark\u003e, providing insights into the optimal choice for high-performance, scalable applications.\n  \n## Usages\n- Data Redis\n- Redis Reactive\n- Redisson\n\n## Architecture of each the Projects\n\n ### 1-src folder\n   - configration\n   - controller\n   - model\n   - repository\n   - service\n   - util\n     \n ### 2-resources folder\n   - application.properties\n   - schema.sql\n   \n### 3-Maven pom.xml of Data Redis\n\u003cbr\u003e \n    \n```\n\t\u003cdependencies\u003e\n\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003ecom.example\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003eredis-reactive\u003c/artifactId\u003e\n\t\t\t\u003cversion\u003e0.0.1-SNAPSHOT\u003c/version\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-data-redis\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-webflux\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.projectlombok\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003elombok\u003c/artifactId\u003e\n\t\t\t\u003coptional\u003etrue\u003c/optional\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-data-r2dbc\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003ecom.mysql\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003emysql-connector-j\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003eruntime\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eio.asyncer\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003er2dbc-mysql\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003eruntime\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eio.projectreactor\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003ereactor-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\u003c/dependencies\u003e\n ```\n\n### 4-Maven pom.xml of Redis Reactive\n\u003cbr\u003e \n    \n```\n\t\u003cdependencies\u003e\n\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-data-redis-reactive\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-webflux\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.projectlombok\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003elombok\u003c/artifactId\u003e\n\t\t\t\u003cversion\u003e1.18.30\u003c/version\u003e\n\t\t\t\u003cscope\u003eprovided\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-data-r2dbc\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003ecom.mysql\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003emysql-connector-j\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003eruntime\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eio.asyncer\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003er2dbc-mysql\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003eruntime\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eio.projectreactor\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003ereactor-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\u003c/dependencies\u003e\n ```\n\n\u003cbr\u003e\n\n### 5-Maven pom.xml of Redisson\n\u003cbr\u003e \n    \n```\n\t\u003cdependencies\u003e\n\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003ecom.example\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003eredis-reactive\u003c/artifactId\u003e\n\t\t\t\u003cversion\u003e0.0.1-SNAPSHOT\u003c/version\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-webflux\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.redisson\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003eredisson-spring-boot-starter\u003c/artifactId\u003e\n\t\t\t\u003cversion\u003e3.16.6\u003c/version\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.projectlombok\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003elombok\u003c/artifactId\u003e\n\t\t\t\u003cversion\u003e1.18.30\u003c/version\u003e\n\t\t\t\u003cscope\u003eprovided\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-data-r2dbc\u003c/artifactId\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003ecom.mysql\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003emysql-connector-j\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003eruntime\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eio.asyncer\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003er2dbc-mysql\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003eruntime\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eorg.springframework.boot\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003espring-boot-starter-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\t\u003cdependency\u003e\n\t\t\t\u003cgroupId\u003eio.projectreactor\u003c/groupId\u003e\n\t\t\t\u003cartifactId\u003ereactor-test\u003c/artifactId\u003e\n\t\t\t\u003cscope\u003etest\u003c/scope\u003e\n\t\t\u003c/dependency\u003e\n\t\u003c/dependencies\u003e\n ```\n\n\u003cbr\u003e\n\n###### Output :star_struck: \n The `spring-boot-starter-data-redis-reactive` implementation seems to have **the best overall performance**, as it shows **lower average response times** and **higher throughput**.`Redisson` and `spring-boot-starter-  data-redis` have **similar performance**.\n\n- Redis:\n\u003cimg width=\"1018\" alt=\"data-redis\" src=\"https://github.com/user-attachments/assets/3644280d-322e-477e-a82d-a75f1f5ffb85\"\u003e\n\n- Redis Reactive:\n  \n\u003cimg width=\"1024\" alt=\"reactive-redis\" src=\"https://github.com/user-attachments/assets/51c4b752-ecb4-4dfc-84ce-4768881382a9\"\u003e\n\n- Redisson:\n  \n\u003cimg width=\"1021\" alt=\"redisson\" src=\"https://github.com/user-attachments/assets/d3be5664-c7fe-4065-8c29-1d888e134bb6\"\u003e\n\n---\n\n### Good Luck \u003cimg src=\"https://media.giphy.com/media/hvRJCLFzcasrR4ia7z/giphy.gif\" width=\"30px\"\u003e \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarakhild%2Fredis-performance","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsarakhild%2Fredis-performance","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarakhild%2Fredis-performance/lists"}