首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >间歇慢响应和超时- Apache + mod_wsgi + Web2py

间歇慢响应和超时- Apache + mod_wsgi + Web2py
EN

Server Fault用户
提问于 2017-09-06 04:50:41
回答 2查看 859关注 0票数 1

我已经Ubuntu14.04.5LTS (i686)在一个数字海洋液滴与2x2.4GHzCPU和4gb物理内存。我正在使用Apache和mod_wsgi在上面运行一个mod_wsgi应用程序。盒子上还安装了一些额外的python模块,比如numpy和opencv2。数据库是MySQL 5.5。

另一个服务器上的Wordpress网站使用php-curl调用这个web2py应用程序。通常响应时间为2-5秒.但偶尔也会超时(响应时间为>1000秒)。我在Web2py应用程序中添加了日志点,它们告诉我们,在到达应用程序之后,一切都在2-3秒内完成。但是在Apache2访问日志中,响应时间记录为大于1000秒的数字。在访问日志中,当从Wordpress网站发起请求时,请求时间大致相同。

有人能指出如何找出这种间歇缓慢反应的原因吗?

谢谢

EN

回答 2

Server Fault用户

回答已采纳

发布于 2017-09-18 14:36:20

最后,我找到了问题的原因。它是到web2py应用程序默认模型文件中的远程数据库的连接语句。此数据库连接不在应用程序的任何位置使用。但是,由于它位于模型文件中,因此每当调用控制器函数时,应用程序都会尝试不必要地连接到远程数据库。

最初,我在应用程序中到处添加了日志点,但没有添加应用程序的默认模型文件;因此,日志对根本原因保持沉默。然后,我用演示应用程序的文件(web2py附带的文件)逐一替换应用程序文件夹内容,从而测试了应用程序,并帮助揭示了问题的根源。然后,通过在应用程序的默认模型文件开始和结束时添加日志记录来验证根本原因。

票数 0
EN

Server Fault用户

发布于 2017-09-13 14:48:11

为了找出超时的根本原因,您可以使用php慢速日志,这将解释哪个函数负责。

您必须修改www.conf并更改选项request_slowlog_timeout0默认值。例如:

代码语言:javascript
复制
request_slowlog_timeout = 10s

您可以阅读更多关于激活慢速日志这里的内容,并查看一些常见的这里慢速源。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/872228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档