{"id":27253459,"url":"https://github.com/marselester/load-testing","last_synced_at":"2025-09-11T00:36:29.346Z","repository":{"id":143042064,"uuid":"203810103","full_name":"marselester/load-testing","owner":"marselester","description":"Load testing setup based on Yandex Tank, Pandora, Overload.","archived":false,"fork":false,"pushed_at":"2019-08-22T14:19:31.000Z","size":328,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-05-02T00:42:17.648Z","etag":null,"topics":["load-testing","yandex-tank"],"latest_commit_sha":null,"homepage":null,"language":"Go","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/marselester.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":"2019-08-22T14:19:02.000Z","updated_at":"2024-06-19T12:20:19.546Z","dependencies_parsed_at":"2023-03-23T22:02:58.345Z","dependency_job_id":null,"html_url":"https://github.com/marselester/load-testing","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marselester%2Fload-testing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marselester%2Fload-testing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marselester%2Fload-testing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marselester%2Fload-testing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marselester","download_url":"https://codeload.github.com/marselester/load-testing/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248324304,"owners_count":21084685,"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":["load-testing","yandex-tank"],"created_at":"2025-04-11T01:27:40.265Z","updated_at":"2025-04-11T01:27:40.840Z","avatar_url":"https://github.com/marselester.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Load testing\n\nThis is demo of a load testing setup based on\n[Yandex Tank](https://yandextank.readthedocs.io/en/latest/) (plugin-based test runner)\nwith the following plugins:\n\n- [Pandora](https://yandextank.readthedocs.io/en/latest/core_and_modules.html#pandora) (load generator)\n- [Overload](https://overload.yandex.net) (testing result viewer)\n\nThe system under test is a Go program that shows a list of books with random latencies up to 200ms.\n\n```sh\n$ git clone https://github.com/marselester/load-testing.git\n$ cd ./load-testing\n$ go run ./cmd/server/main.go\n$ curl localhost:8000/v1/books\n{\"books\": [{\"name\": \"The Adventures of Tom Sawyer\"}]}\n```\n\nInstall Yandex Tank\n\n```sh\n$ virtualenv venv\n$ source ./venv/bin/activate\n$ pip install https://api.github.com/repos/yandex/yandex-tank/tarball/master\n```\n\nInstall Pandora\n\n```sh\n$ go get github.com/yandex/pandora\n```\n\nYandex Tank configuration is defined in [load.yml](load.yml).\nTest data [ammo.json](ammo.json) describes the HTTP requests a load generator will send to a Go program.\nIn this case Pandora will start from sending `GET /v1/books` 1 request per second and progress to\n100 requests per second for duration of 30 seconds.\n\nStart testing:\n\n```sh\n$ yandex-tank -c load.yml\n```\n\nThe results will be available at https://overload.yandex.net\n(you'll need to sign in to get an API token and store it in `overload-token.txt`).\n\n![Overload](images/overload.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarselester%2Fload-testing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarselester%2Fload-testing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarselester%2Fload-testing/lists"}