【问题标题】:Catalyst development server appears to hangCatalyst 开发服务器似乎挂起
【发布时间】:2014-08-22 02:37:10
【问题描述】:

我正在为我的 Catalyst 应用程序执行内置开发服务器的常规操作:

DBIC_TRACE=1 perl script/*_server.pl -d -r -p 3001 2>&1 | tee -a /var/log/cat-dev.log

一切运行良好,服务器检测文件何时更改并重新启动;然后出乎意料的是,它显然只是锁定了。浏览 localhost:3001/(和/或 {local_IP}:3001/ 通过 LAN)上的应用程序会冻结,如果是新连接,浏览器会显示“正在加载...”或“正在连接...”。

这种情况已经发生了一段时间,我之前只是想“哦,好吧”,然后按 Ctrl-C 并重新运行服务器命令。但是最近一次,我在 htop 中找到了服务器进程并对其进行了 strace。它显然很忙,显然正在检查源文件的状态以判断是否需要重新启动。然后我来到 StackOverflow,阅读了一下,正要发布这个,回到浏览器,发现它现在已经提供了页面!

这是在日志文件中...

[debug] Rendering template "jobs_search_results.tt"
[debug] Response Code: 200; Content-Type: text/html; charset=utf-8; Content-Length: 74540
[info] Request took 963.465151s (0.001/s)

同事们都在抱怨线程;此处的半相关查询表明它可能与数据库连接有关(我确实连接到远程数据库);我想知道“-r”活动...我应该在其中寻找什么?

这是最近更新的 Catalyst 安装。

【问题讨论】:

    标签: catalyst


    【解决方案1】:

    如果您怀疑重启器导致了某种奇怪的阻塞,请尝试在没有它的情况下启动服务器。

    基本服务器是单进程的,所以很容易被阻塞。尝试使用分叉选项运行您的应用程序,这也可能会清除它

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-19
      相关资源
      最近更新 更多