Golang实现的高性能HTTP负载工具
Sniper Sniper是一个功能强大、高性能的HTTP负载工具,采用Golang编写。利用协程并发优势,实现海量并发、超低内存占用、丰富图表展示。是测试、分析、优化服务端性能的绝佳助手! ##体验 提供以下可执行文件,可直接运行 Darwin 64 bit Darwin 32 bit Linux 64 bit Linux 32 bit FreeBSD 64 bit FreeBSD 32 bit ##功能 以实用为原则,实现以下功能 GET / POST keep-alive模式 https 图表展示结果 测试多个目标 支持大文件负载 跨平台,支持Linux,FreeBSD,Darwin ###对比同类工具 ##性能 内存占用低于Apache Benchmark(ab)等主流负载工具 执行速度接近ab,高并发时超过ab 支持10k以上并发 支持超大文件测试 测试的详细情况,与各大负载测试工具的性能对比 在此 ##图表展示 统计分析每个请求 输出建立连接时间 输出服务端响应时间 输出总时间 基于 dygraphs 与html5,详细展现服务端性能情况 从测试结果中等距采样约1000样本,详细展现连接建立,链路传输和服务端执行情况 下图展示了总时间和连接建立时间的对比,Golang是怎样得到连接建立的时间呢? 原来项目基于net库实现了HTTP协议栈,重构而不是官方net