当前位置:首页 > 技术文章 > 正文内容

网关超时(504 Gateway Time-out)(504网关超时可能是哪些原因导致)

arlanguage3个月前 (01-31)技术文章20

一、Ajax设置超时时长

var ajaxTimeoutTest=$.ajax({

  url:'',//请求地址

  timeout:1000,//超时时间设置, 单位毫秒

  type:'GET',//get或post

  data :{}, //请求所传参数,json格式

  dataType:'json',//返回的数据格式

  success:function(data){ //请求成功的回调函数

    alert("成功");

  },

  complete : function(XMLHttpRequest,status){ //请求完成后最终执行参数

    if(status=='timeout'){//超时,status还有success,error等值的情况

      ajaxTimeoutTest.abort();

      alert("超时");

    }

  }

})

二、nginx访问出现504 Gateway Time-out

分析

nginx访问出现504 Gateway Time-out,一般是由于程序执行时间过长导致响应超时,例如导入一批大数据导致前端等待很长时间,这样就会出现超时。

通常修改nginx以下配置可以解决问题

nginx.conf中,设置以下几个参数,增加超时时间

http {

...

fastcgi_connect_timeout 30000;

fastcgi_send_timeout 30000;

fastcgi_read_timeout 30000;

...

}

fastcgi_connect_timeout:连接超时时间,默认60秒

fastcgi_send_timeout:发送请求过程的超时时间,默认值60秒

fastcgi_read_timeout:发送输出过程的超时时间,默认值60秒

server {

listen 8080;

location / {

proxy_pass http://xxx.com/api;

proxy_connect_timeout 30000;

proxy_send_timeout 30000;

proxy_read_timeout 30000;

}

}

proxy_connect_timeout 30000s;#nginx跟后端服务器连接超时时间(代理连接超时)

proxy_send_timeout 30000s;#后端服务器数据回传时间(代理发送超时)

proxy_read_timeout 30000s;#连接成功后,后端服务器响应时间(代理接收超时)

三、更改MySQL数据库超时时间

1.查看当前锁超时时间

show variables like 'innodb_lock_wait_timeout';

2.查看全局锁超时时间

SHOW GLOBAL VARIABLES LIKE 'innodb_lock_wait_timeout';

3.更改当前锁超时时间为120秒

SET innodb_lock_wait_timeout=120;

4.更改全局锁超时时间为120秒

SET GLOBAL innodb_lock_wait_timeout=120;

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/1285.html

分享给朋友:

“网关超时(504 Gateway Time-out)(504网关超时可能是哪些原因导致)” 的相关文章

三年前端还不会配置Nginx?刷完这篇就够了

一口气看完,比自学强十倍!什么是NginxNginx是一个开源的高性能HTTP和反向代理服务器。它可以用于处理静态资源、负载均衡、反向代理和缓存等任务。Nginx被广泛用于构建高可用性、高性能的Web应用程序和网站。它具有低内存消耗、高并发能力和良好的稳定性,因此在互联网领域非常受欢迎。为什么使用N...

linux(centos)yum安装nginx最新版及配置文件

安装nginx及配置文件我们采用yum的方式安装最新版nginx,就两步即可。最新版本及其他Linux版本可见官方文档官方文档:http://nginx.org/en/linux_packages.html#stable请读者根据自己的版本选择配置:按官方文档,选择自己版本centos可看到步骤:1...

nginx代理常用配置

1. 最简反向代理配置在http节点下,使用upstream配置服务地址,使用server的location配置代理映射。upstream my_server { server 10.0.0.2:8080; keepalive 2000;}server { listen 80; server_...

在 Ubuntu 或 Debian 系统上安装以及配置 nginx-1.20.1.tar.gz

安装和配置 Nginx 的步骤如下:下载 Nginx:1、首先,你需要从 Nginx 的官方网站下载源代码包。在你的服务器上执行以下命令,下载 Nginx 1.20.1 版本的源代码包:wget http://nginx.org/download/nginx-1.20.1.tar.gz2、解压源代码...

Nginx如何实现四层负载均衡

静态负载均衡Nginx的四层静态负载均衡需要启用ngx_stream_core_module模块,默认情况下,ngx_stream_core_module是没有启用的,需要在安装Nginx时,添加--with-stream配置参数启用,如下所示。./configure --prefix=/usr/l...

一般人绝对无法发现的nginx锅

nginx热启动:nginx -s reloadPS:要在/etc/profile环境变量PATH里配置nginx的路径。配置完执行 source /etc/profile 让变量生效。 一次部署,同样的前端代码,放到了nginx里面运行,但是有一个模块全部页面都报这个错误,其他模块正常展示。以前遇...