我有一个Grails应用程序,它执行以下操作:
当从客户端收到请求时,服务器开始为该请求创建zip文件并将其发送回客户端计算机。服务器为创建zip文件所花费的时间非常长,即使客户端和服务器之间的连接丢失,服务器也会连续3天左右生成zip文件,使用100% CPU,并在某处发送响应,可能是一个死胡同。
我试着找出解决这个问题的方法,我发现套接字编程是一种检测连接丢失的方法。
这个问题可能看起来很广泛,但我只是想知道方法,可以找到连接丢失,以便我可以挖掘这种方法并找出解决方案。
答案 0 :(得分:0)
检查保存connect()
方法结果的对象是否为null
。
您还可以围绕尝试连接的代码包装try
catch
语句,如果异常失败则打印出异常,以便您知道发生的位置/内容。