{"id":21214306,"url":"https://github.com/goindow/cpu-load-benchmark","last_synced_at":"2025-10-24T23:52:55.047Z","repository":{"id":143903764,"uuid":"575216833","full_name":"goindow/cpu-load-benchmark","owner":"goindow","description":"CPU 使用率达标辅助程序，支持多核、平衡载荷负载均衡等","archived":false,"fork":false,"pushed_at":"2022-12-09T08:46:18.000Z","size":46,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-12T22:47:35.999Z","etag":null,"topics":["cpu","cpu-load-balance","cpu-usage","cpulimit"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/goindow.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":"2022-12-07T02:24:40.000Z","updated_at":"2022-12-07T02:43:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"1cbe26e9-90fc-417d-9364-6b376ef4320d","html_url":"https://github.com/goindow/cpu-load-benchmark","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/goindow/cpu-load-benchmark","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goindow%2Fcpu-load-benchmark","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goindow%2Fcpu-load-benchmark/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goindow%2Fcpu-load-benchmark/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goindow%2Fcpu-load-benchmark/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goindow","download_url":"https://codeload.github.com/goindow/cpu-load-benchmark/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goindow%2Fcpu-load-benchmark/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280883925,"owners_count":26407607,"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","status":"online","status_checked_at":"2025-10-24T02:00:06.418Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cpu","cpu-load-balance","cpu-usage","cpulimit"],"created_at":"2024-11-20T21:27:13.161Z","updated_at":"2025-10-24T23:52:55.002Z","avatar_url":"https://github.com/goindow.png","language":"Shell","readme":"# cpu-load-benchmark\nCPU 使用率达标辅助程序，支持多核、平衡载荷负载均衡等\n\n## 使用场景\n- 在一些政府项目中，政务网等有时候会对实例的 CPU 平均使用率进行考核，不达标将被降配，可以使用该辅助程序完成达标任务\n\n## 支持的 OS\n- CentOS\n- Ubuntu\n\n## 依赖说明（自动安装）\n- gcc\n- make\n- cpulimit\n\n## 文件说明\n- benchmark.sh，快捷方式，通常请使用该脚本来启动/停止程序\n  - -e expect_load，期望负载，默认 15，取值范围了 [0, 80]\n  - -i cpu_load_balance_interval，负载均衡检查间隔，默认 30 秒，取值范围 [10, 300]\n- bin/cpu_load_balance.sh，核心实现，根据 CPU 逻辑核数实现期望负载的动态调整，调整周期如上参数指定，一般不推荐直接使用该脚本\n- bin/cpu_overload.sh，超载程序\n- bin/cpu_usage.sh，计算 CPU 整体使用率\n- bin/vender/cpulimit(.tar.gz)，三方依赖，使进程在 CPU 限额下运行\n- balance.pid，cpu_load_balance.sh 进程信息\n- balance.stat，cpu_load_balance.sh 运行状态信息\n\n\n## 使用说明\n```shell\nUsage: benchmark COMMAND [ARGS...]\n\n  Auxiliary program for CPU utilization reaching the standard, \n  supporting multi-core, load balancing, etc\n\nCommands:\n  status                             Print pid\n  stop                               Kill the program\n  start [-e expect] [-i interval]    Run the program\n      -e expect_load                 Set expected load(default 15, only in [0, 80])                    \n      -i load_balance_interval       Set load balancing interval(default 30, only in [10, 300], unit second)\n```\n\n## 示例\n```shell\n# 启动\nbenchmark start                # 默认，期望 CPU 整体平均使用率达到 15%，检查间隔 30s\nbenchmark start -e 20 -i 60    # 指定，期望 CPU 整体平均使用率达到 20%，检查间隔 60s\n\n# 停止\nbenchmark stop\n\n# 状态\nbenchmark status\n\n# 运行状态信息\ncat balance.stat\n```","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoindow%2Fcpu-load-benchmark","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoindow%2Fcpu-load-benchmark","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoindow%2Fcpu-load-benchmark/lists"}