现象
向后台发送请求,得到错误的响应代码 ,504 Gateway Timeout
The processing of the request was interrupted
CSP application closed the connection before sending a complete response
原因分析
一般的,如果是单一请求出现此现象,应该考虑这个请求后台程序处理较慢,慢到超过了预期的时间。如上图中的请求longtime.csp,可以看到这个csp内部代码中加了一个挂起60秒(仅为模拟一个比较耗时的程序执行过程),所以这个请求需要60多秒才能响应。
然后通过数据库管理门户,进入到CSP网关管理,查看配置的服务响应超时时间。
目前配置的为60,而程序执行时间又会超过60,所以这个请求就响应了504.
解决办法
方法1:尝试优化后台程序,缩短执行时间,如将longtime.csp里的挂起60秒改成挂起30秒。
方法2:当程序已无法进行优化后,可以调整CSP网关的配置,将超时时间适当延长,如改为90秒。
也可按照服务设置(优先级比默认参数高)
关键词
504 Gateway Timeout、interrupted、closed the connection