在Heroku服务器(512mb内存)上获得了一个当前正在运行且稳定的Rails应用
我把这个应用程序照原样放在dokku(带城际)上的ubuntu服务器14gb ram 2 cpu(azure)上。
应用程序旋转和工作非常快,一切看起来都很好。
1分钟不活动后,我刷新浏览器并获得
504网关超时
我尝试搜索错误或任何内存问题,但唯一看起来不对的是
17/01/18 11:24:18 [error] 61198#61198: *2071 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 79.184.17.155, server: cltvf.site, request: "GET /campaigns/5874e4d14bc3600a4a19566/details HTTP/1.1", upstream: " http://172.11.0.3:5000/campaigns/587f4e4d4bc3600a4a19566/details ", host: "cltvf.site", referrer: " http://cltv.site/an/u_request_approve "
我从
nginx:错误日志
命令
the 172.11.0.3 is an internal ip, if helps.
在尝试检查是否存在内存问题时,我看到
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
199.8兆字节/13.69千兆字节1.43% 296.7千字节/156.5千字节0字节/0字节13个a296ec88b1ef 0.01% 254.2兆字节/13.69千兆字节1.81% 282.5千字节/111.4千字节0字节/614.4千字节52字节69ddc4351 0.13% 254.3兆字节/13.69千兆字节1.81% 286.9千字节/112.5千字节0字节/614.4千字节51 43665198a31b 0.00% 231.8兆字节/13.69千兆字节1.65% 19.33兆字节/21.8兆字节0字节/0字节12 7d374f36b240 0.00% 231.6兆字节/ 2008年12月13日,在美国,一个名为"2008年全球数据传输计划"的计划中,该计划的目标是:69千兆字节1.65% 19.34 MB/21.78 MB 0字节/0字节12 378302bbdb84 0.00% 55.11兆字节/13.69千兆字节0.39% 64.81千字节/4.737千字节0字节/225.3千字节40 52.47兆字节/13.69千兆字节0.37% 71.75千字节/8.718千字节0字节/225.3千字节40
你看不出什么严重的
磁盘使用情况相同
[#########..............................]/
/开发人员/sdb1 27G 44M 26G 0.2 [............ ]/mnt
/var/lib/docker/aufs文件系统中的文件系统
2007年12月26日,上海,上海,上海,上海,上海,上海,上海,上海我的意思是说,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是我的意思是说,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是2008年12月26日,我公司正式对外开放,对外开放时间为2008年12月28日。2000年12月26日,在北京,一个名为"北京大学"的大学生在一个名为"北京大学"的网站上发表了一篇文章,文章的主题是"北京大学"。我的意思是说,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是2004年12月26日,我公司在上海成立了一个名为"上海市高新技术产业开发区"的高新技术产业开发区,该开发区由上海市高新技术产业开发区和上海市高新技术产业开发区组成。我的意思是说,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是,我的意思是1999年,在美国的一个实验室里,研究人员发现,
我在谷歌上搜索了几个小时后发布了这个问题。
谢谢
2条答案
按热度按时间jjhzyzn01#
1.您可以从检查应用程序日志开始:
dokku logs <app>
1.您可以尝试直接连接到
curl http://172.11.0.3:5000/
1.您可以尝试进入正在运行Web进程的容器:
dokku enter <app> web
1.您可以使用
gdb
、strace
连接到进程并使用标准linux调试工具rxztt3cl2#
最可能的原因是请求执行时间太长,导致失败,并显示504网关超时。
这通常发生在服务器响应时间超过60 s的时候(取决于nginx.conf中的设置,在dokku中60 s是默认的)。
解决的办法是:
1.最简单的:增加/home/dokku/:your_app_name/nginx.conf中的代理读取超时时间,并重新加载nginx配置。
1.或者找出请求执行时间过长的根本原因,并使其更快响应(例如,启用缓存,或将时间昂贵的任务分割在单独的工作进程中,并使Web服务仅响应作业的状态,允许前端仅轮询作业的状态,直到其完成)