使用反向代理logging所有传入的HTTP请求,然后在克隆服务器中执行它以进行性能testing

几个星期前,我去了一个演讲,一个家伙说,在他的公司,他使用了一个反向代理,logging所有传入的http请求到生产服务器。 然后他可以在另一台服务器上执行它们进行性能testing。

我做了很多search,但从来没有find理想的工具来做到这一点。 有谁知道一个代理服务器,可以做到这一点?

听起来很像重播攻击。 我不确定哪个Web服务器可以自动完成,但是你可以自己写一些脚本。

反向代理将需要logging所有事务。 然后,您可以编写脚本来parsing日志,并重播与URL的连接。 您还可以模拟每秒连接的数量,以及连接的顺序。

但是,有一些限制。 主要是会话信息,如果没有保存在URL中,可能会丢失。

所以,结果可能不是很有用。 这只是要记住。 最终,你需要清楚你的目标是什么。

Squid允许你redirect任何URL,所以当你一次只处理一个请求时,它很容易编写你自己的处理程序,它logging发送的HTTP头的细节,然后把请求转发到真正的目标,logging回应。 不同的是有http ::logging器 ,它为你做的大部分,虽然我不知道有人在这种规模使用。

问题在于,您需要确保在录制期间开始时您已经获得了系统的一致映像(即数据库的内容),然后才能运行重播。