我在看用于负载测试 HTTP 服务器的工具?但我不知道如何在这些工具中重放我自己的现有日志。我有一个错误,它只在某些负载操作下发生,而我现有的 JMeter 和 AB 测试工具无法重现。
我只想简单地给予工具 access_logs 并让它以更快或相同的速度播放它们。
答案1
答案2
假设您的访问日志中只有 GET 请求,并且您不介意请求在日志中时间戳的分辨率限制下聚集,那么大约 10 行 $SCRIPTING_LANGUAGE 应该可以解决问题。POST、cookie、HTTP 身份验证和更微妙的计时是一项更有趣的练习。
答案3
这需要一个支持 http 日志重放的程序,例如负载测试应用程序。HTTPerf 就是这样一个应用程序(https://github.com/httperf/httperf)。
操作方法文章位于https://www.igvita.com/2008/09/30/load-testing-with-log-replay/
答案4
你为什么不自己开发一个呢?获取日志;解析它。获取 URI。进行 curl 调用。你可以用 php 编写它并在 apache 中运行它以实现并发。
如果您的日志是 gz 格式,请执行 zcat,使用 readlog 工具。这将提供 URL。现在使用 phpCurl 访问 URL。为了获得更高的吞吐量,请在 apache 中运行它(使用 ab 加载它)。