Ruby on rails 捕获/克隆到达生产服务器的数据包,并使用它们测试临时服务器

Ruby on rails 捕获/克隆到达生产服务器的数据包,并使用它们测试临时服务器,ruby-on-rails,testing,socket.io,tcpdump,Ruby On Rails,Testing,Socket.io,Tcpdump,我们有一个在生产中非常复杂的应用程序,涉及实时通信。主要组件包括一个响应http请求的Ruby on Rails应用程序和一个处理实时通信部分的socket io服务器 我想做的是,捕获/克隆进入生产的数据包,并使用它们在“真实”负载下在登台系统上测试对应用程序关键部分的更新,而不冒破坏生产的风险。我认为这可以通过两种方式实现 选项1-动态克隆生产流量并将其发送到暂存 选项2-将生产流量样本存储并重放到暂存上 在这两种情况下,我们可能都需要忽略来自暂存的响应,而是记录它们或只将它们发送到选定的客

我们有一个在生产中非常复杂的应用程序,涉及实时通信。主要组件包括一个响应http请求的Ruby on Rails应用程序和一个处理实时通信部分的socket io服务器

我想做的是,捕获/克隆进入生产的数据包,并使用它们在“真实”负载下在登台系统上测试对应用程序关键部分的更新,而不冒破坏生产的风险。我认为这可以通过两种方式实现

选项1-动态克隆生产流量并将其发送到暂存

选项2-将生产流量样本存储并重放到暂存上

在这两种情况下,我们可能都需要忽略来自暂存的响应,而是记录它们或只将它们发送到选定的客户端

我一直在研究如何使用一些linux工具,如tcpdump和tcpreplay来实现这一点。这看起来当然是可能的,但在我开始讨论这个问题之前,我想检查一下是否有人曾经这样做过,以及他们使用了什么样的方法