对于性能测试,我想从生产服务器捕获一些流量,并以此为基础将请求重播到测试服务器,以模拟我们开发环境中的实际负载。这些都是无状态查询,所以没有关于 cookie、会话等的问题。
Apache 日志将所有内容的时间戳精确到 1 秒,但这对于我们的高峰时间来说还不够精细。捕获更细粒度的重放时间戳的最佳方法是什么?是否有一些ab
类似负载生成程序可以使用这些数据来复制负载?
对于性能测试,我想从生产服务器捕获一些流量,并以此为基础将请求重播到测试服务器,以模拟我们开发环境中的实际负载。这些都是无状态查询,所以没有关于 cookie、会话等的问题。
Apache 日志将所有内容的时间戳精确到 1 秒,但这对于我们的高峰时间来说还不够精细。捕获更细粒度的重放时间戳的最佳方法是什么?是否有一些ab
类似负载生成程序可以使用这些数据来复制负载?
使用 jmeter。
http://jmeter.apache.org/usermanual/component_reference.html#Access_Log_Sampler
就时间戳的粒度而言,您不会比这更好。但是,您可以随机化 jmeter 中的时隙。即使您的生产流量日志显示每秒点击一次,您也可以告诉 jmeter 大幅加快速度。
您可以捕获生产运行的网络数据,对其进行解析,然后将其用作重放机制,比较生产运行和测试运行的结果(如果需要)。Oren Eini (Ayende Rahien)在他的博客上谈到了一些非常相似的事情。
我知道有(或曾经有)一个工具可以让您根据记录的会话进行负载/性能测试,但我现在找不到它:(。
您还可以使用 BadBoy 捕获会话以使用 JMeter 重播: http ://www.badboysoftware.biz/docs/jmeter.htm