# proxy-stress-tester **Repository Path**: baylor/proxy-stress-tester ## Basic Information - **Project Name**: proxy-stress-tester - **Description**: ProxyZero 是一个基于微服务架构的高性能代理压力测试平台,采用 Vue 3 + Go 技术栈,支持即时、轮转与定时压测,通过 Redis Streams 与 ClickHouse 实现高并发实时监控与数据分析,为代理IP性能提供全链路测试解决方案。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-11-26 - **Last Updated**: 2025-12-30 ## Categories & Tags **Categories**: testing **Tags**: None ## README # proxy-stress-tester ## 概述 ProxyZero 是一个基于微服务架构的高性能代理压力测试平台,采用 Vue 3 + Go 技术栈,支持即时、轮转与定时压测,通过 Redis Streams 与 ClickHouse 实现高并发实时监控与数据分析,为代理IP性能提供全链路测试解决方案。 ## 长期监测示例 eg: curl -x url -U"username:password" https://www.cloudflare.com/cdn-cgi/trace fl=270f81 h=www.cloudflare.com ip=79.27.7.18 ts=1764662847.178 visit_scheme=https uag=curl/8.7.1 colo=MXP sliver=010-tier1 http=http/2 loc=IT tls=TLSv1.3 sni=plaintext warp=off gateway=off rbi=off kex=X25519 ## 架构 ``` +------------------+ | 客户端/Web浏览器 | +------------------+ | +-----------------+ +-------------------+ | Web Service |<------>| Mysql | | (API服务) | | (关系数据库) | +-----------------+ +-------------------+ | +-----------------+ +-------------------+ |Scheduler Service |<------>| Redis Streams | | (调度服务) | | (任务通知队列) | +-----------------+ +-------------------+ | +-----------------+ +-------------------+ | Redis Streams |<------->| Consumer Service | | (测试结果队列) | | (测试结果队列) | +-----------------+ +-------------------+ | +-----------------+ | Clickhouse | | (列数据库) | +-----------------+ ``` ## 动态住宅IP重复分析 还有一些其他潜在因素可能导致IP重复: 请求频率过高:如果请求发送得太快,代理服务器可能没有足够的时间切换IP 代理服务器特性:某些代理服务器可能会对来自同一客户端的请求在短时间内分配相同IP 并发模型:尽管我们已经禁用了连接复用,但在高并发情况下,仍可能存在一些系统层面的优化机制 如果修改后仍然存在问题,建议考虑: 在请求之间添加小的延迟 降低并发数量,增加请求间隔 检查代理服务器的特性说明,看是否有特殊的IP分配规则 ## 单机部署:docker-compose docker-compose up -d docker-compose up --scale consumer-service=2 -d docker-compose up --scale scheduler-service=2 -d - 下游consumer-service可以直接启动多实例,redis stream机制支持多消费者 - 中游压测服务启多实例,虽可以加速压测结果数据的产生,但会导致代理服务承压不均衡 ## 动态扩展:docker-swarm 模拟20台机器跑2000并发场景(忽略代理服务承压不均衡,远低于其负载能力) ## 12月6日会议纪要 参会人:汪继忠、史甫启、权全 1.所有项目的测试资源属于同一个,忽略地区延迟因素 2.单个10台机器(4u8g),每个200并发,实现2000并发,保证压测服务调度合理利用服务器资源 3.连接池、连接复用确会影响唯一ip统计 4.一般会测单项目多个地区 5.历史参与人:甫启、权全 6.竞品测试结果 国家维度: 历史统计结果:地区偏移(成功率、平均延迟忽略) 7.数据库连接信息给我一下