{"id":13436326,"url":"https://github.com/imjacobclark/Herd","last_synced_at":"2025-03-18T21:30:18.338Z","repository":{"id":32985167,"uuid":"36611781","full_name":"imjacobclark/Herd","owner":"imjacobclark","description":"An experimental HTTP load testing application written in Rust.","archived":false,"fork":false,"pushed_at":"2023-02-23T16:00:40.000Z","size":49,"stargazers_count":110,"open_issues_count":3,"forks_count":11,"subscribers_count":10,"default_branch":"master","last_synced_at":"2024-10-27T20:19:04.151Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/imjacobclark.png","metadata":{"files":{"readme":"README.md","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,"publiccode":null,"codemeta":null}},"created_at":"2015-05-31T16:28:38.000Z","updated_at":"2024-08-01T06:26:19.000Z","dependencies_parsed_at":"2024-06-19T02:55:44.233Z","dependency_job_id":"6bb05921-f753-4881-a779-45875931212d","html_url":"https://github.com/imjacobclark/Herd","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imjacobclark%2FHerd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imjacobclark%2FHerd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imjacobclark%2FHerd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imjacobclark%2FHerd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imjacobclark","download_url":"https://codeload.github.com/imjacobclark/Herd/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244310240,"owners_count":20432500,"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":"2024-07-31T03:00:46.775Z","updated_at":"2025-03-18T21:30:18.099Z","avatar_url":"https://github.com/imjacobclark.png","language":"Rust","funding_links":[],"categories":["Applications","Rust","Applications written in Rust","应用 Applications","应用","应用程序 Applications"],"sub_categories":["贡献"],"readme":"# Herd\nHerd was a small side project in building a HTTP load testing application in Rust with a main focus on being easy to use and low on OS level dependencies such as the JVM.\n\nHerd was developed on a pre-1.0 version of Rust, it is not unit tested and unlikley to compile on later versions of Rust, I intend to revisit this project as the Rust ecosystem matures.\n\nHerd can spawn thousands of concurrent requests to HTTP endpoints by making use of unix process forking and multithreadding. \n\nHerd is hardware intensive. Per each 1000 virtual users, Herd will fork itself in order to overcome hard limits set by the OS on how many active threads a process can have at any one time. Due to this, it is recomended you run Herd from a disposable machine in the cloud, high levels of virtual users can crash machines if they run out of memory or CPU resources, __do not run Herd on a production machine__.\n\n##### Download and run\n\nAs Herd is unlikley to compile out the box, it is recomended you clone this repository and fully build from source, some alterations to the source code may be needed over time as the Rust language changes, I do not intend on continuously maintaining this project.\n\n###### Dependencies:\n\n`gcc clang libssl rust cargo`\n\n###### Compile from source and run:\n```shell\n$ git clone git@github.com:imjacobclark/Herd.git \u0026\u0026 cd Herd\n$ cargo build --release\n```\n\nYou can define several hosts to test with a configuration file. See [example-config.yaml](example-config.yaml).\n\n```shell\n$ .cargo run -- --config example-config.yaml\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimjacobclark%2FHerd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fimjacobclark%2FHerd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimjacobclark%2FHerd/lists"}