我目前正在制定要求上传大小为10 GB或更大的文件的要求。根据要求,首先需要将文件上传到服务器中。然后需要转移到FTP服务器。一旦文件完全转移到FTP位置。它需要触发邮件。
我已经完成了上传文件大小超过10GB的所有必需的php和服务器配置设置,并且通过主机IP我能够成功上传文件。但是当我通过负载均衡器将同一文件上传到同一主机时。用于超时的连接。一旦文件传输到FTP位置。
经过一番调查后,我确实发现负载均衡器正在超时,因为php脚本正在执行服务器,服务器变得空闲需要更多时间,负载均衡器和服务器之间没有TCP连接通信。目前,理想情况下负载均衡器的超时设置为5分钟。
最有可能这个问题可以解决。如果我们增加负载均衡器超时。但我不是一个合适的解决方案。
我关心的是,在PHP中我们保持服务器和负载均衡器之间的TCP连接可以保持活跃吗?
任何建议都会受到赞赏,因为我正在挠头4天。你的建议可以让我免于秃顶......
答案 0 :(得分:2)
由于FTP的双通道方法,这是一个常见问题。如果空闲超时为5分钟,则支持的建议方法仍然会提高空闲超时。 RFC5382声明".. a large idle-timeout motivated by recommendations in [RFC1122] can reduce the chances of abandoning a live session"。
选项1 是将空闲超时提高一分钟,或者对于此虚拟服务器,您的10GB传输需要JUST(假设您有1个虚拟服务器在端口21上侦听此应用程序)。 / p>
选项2 为BIG-IP设置保持活动状态,使其短于TCP配置文件的超时时间。这是RFC吗?不,它有用吗?大概。这些通常用于长期连接(数据库/大型机),其中空闲会话不应该被打破数小时。这不是你的情况,但可行。
我建议只需将空闲超时提升到上传10GB所需的几分钟。如果您的虚拟服务器处理端口21之外的流量,您可以通过iRules更改TCP配置文件,这样您就可以根据端口获得可变空闲超时。以下是关于F5 DevCentral社区的问题的一个很好的例子。