{"id":26234016,"url":"https://github.com/teragrep/rlp_09","last_synced_at":"2025-03-13T01:18:32.369Z","repository":{"id":223811244,"uuid":"756354126","full_name":"teragrep/rlp_09","owner":"teragrep","description":"RELP Flooder for stresstesting and benchmarking RELP throughput","archived":false,"fork":false,"pushed_at":"2024-03-07T15:27:03.000Z","size":46,"stargazers_count":0,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-04-17T19:13:17.264Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/teragrep.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2024-02-12T14:01:05.000Z","updated_at":"2024-02-22T06:52:21.000Z","dependencies_parsed_at":"2024-02-22T07:43:40.840Z","dependency_job_id":"acdb5025-756c-439c-8c52-1113931ec4fd","html_url":"https://github.com/teragrep/rlp_09","commit_stats":null,"previous_names":["teragrep/rlp_09"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teragrep%2Frlp_09","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teragrep%2Frlp_09/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teragrep%2Frlp_09/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teragrep%2Frlp_09/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/teragrep","download_url":"https://codeload.github.com/teragrep/rlp_09/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243318832,"owners_count":20272159,"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":[],"created_at":"2025-03-13T01:18:31.756Z","updated_at":"2025-03-13T01:18:32.347Z","avatar_url":"https://github.com/teragrep.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"= RELP Flooder library rlp_09\n\nSimple but scalable RELP flooder library\n\n== Features\n\n- Simple to use\n- Scales to as many threads as wanted\n- Supports user-supplied record providers to make dynamic content\n\n== Limitations\n\n- Minimal failure tolerance, mostly meant for testing\n- Limited usability outside specific testing situations\n- Supports only one record per RELP batch\n- No TLS support yet\n\n== How to use\n\n[sourcecode,java]\n----\n// Set all settings\nRelpFlooderConfig relpFlooderConfig = new RelpFlooderConfig(target, port, record, threads);\n\n// Alternatively use setters\nRelpFlooderConfig relpFlooderConfig = new RelpFlooderConfig();\nrelpFlooderConfig.setTarget(\"127.0.0.1\");\nrelpFlooderConfig.setPort(601);\nrelpFlooderConfig.setThreads(4);\n\n// Provide config and Iterator\u003cbyte[]\u003e provider to RelpFlooder, here is example implementation\nExampleRelpFlooderIteratorFactory exampleRelpFlooderIteratorFactory = new ExampleRelpFlooderIteratorFactory();\nRelpFlooder relpFlooder = new RelpFlooder(relpFlooderConfig, exampleRelpFlooderIteratorFactory);\nrelpFlooder.start();\nrelpFlooder.stop();\n\n// Get total records and bytes sent\nLOGGER.info(\"Sent \u003c{}\u003e records\", relpFlooder.getTotalRecordsSent());\nLOGGER.info(\"Sent \u003c{}\u003e bytes\", relpFlooder.getTotalBytesSent());\n\n// Get total records and bytes sent per thread;\nLOGGER.info(\"Sent \u003c{}\u003e records per thread\", relpFlooder.getRecordsSentPerThread());\nLOGGER.info(\"Sent \u003c{}\u003e bytes per thread\", relpFlooder.getTotalBytesSentPerThread());\n----\n\nExample Iterator will send only static records like as\n\n[source,sh]\n----\n\u003c14\u003e1 2024-02-29T13:58:05.605Z localhost rlp_09 - - - Example rlo_09 event\n----\n\n== Configurations\n\n[cols=\"4\"]\n|===\n|Configuration key|Setter|Default value|Usage\n\n|target|setTarget(String target)|127.0.0.1|Sets RELP target\n|port|setPort(int port)|601|Sets RELP port\n|threads|setThreads(int threads)|1|Flooder thread count\n\n|===\n\n== Contributing\n\nYou can involve yourself with our project by https://github.com/teragrep/rlp_09/issues/new/choose[opening an issue] or submitting a pull request.\n\nContribution requirements:\n\n. *All changes must be accompanied by a new or changed test.* If you think testing is not required in your pull request, include a sufficient explanation as why you think so.\n. Security checks must pass\n. Pull requests must align with the principles and http://www.extremeprogramming.org/values.html[values] of extreme programming.\n. Pull requests must follow the principles of Object Thinking and Elegant Objects (EO).\n\nRead more in our https://github.com/teragrep/teragrep/blob/main/contributing.adoc[Contributing Guideline].\n\n=== Contributor License Agreement\n\nContributors must sign https://github.com/teragrep/teragrep/blob/main/cla.adoc[Teragrep Contributor License Agreement] before a pull request is accepted to organization's repositories.\n\nYou need to submit the CLA only once. After submitting the CLA you can contribute to all Teragrep's repositories.\n----\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteragrep%2Frlp_09","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteragrep%2Frlp_09","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteragrep%2Frlp_09/lists"}