我已经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网站发起请求时,请求时间大致相同。
有人能指出如何找出这种间歇缓慢反应的原因吗?
谢谢
发布于 2017-09-18 14:36:20
最后,我找到了问题的原因。它是到web2py应用程序默认模型文件中的远程数据库的连接语句。此数据库连接不在应用程序的任何位置使用。但是,由于它位于模型文件中,因此每当调用控制器函数时,应用程序都会尝试不必要地连接到远程数据库。
最初,我在应用程序中到处添加了日志点,但没有添加应用程序的默认模型文件;因此,日志对根本原因保持沉默。然后,我用演示应用程序的文件(web2py附带的文件)逐一替换应用程序文件夹内容,从而测试了应用程序,并帮助揭示了问题的根源。然后,通过在应用程序的默认模型文件开始和结束时添加日志记录来验证根本原因。
https://serverfault.com/questions/872228
复制相似问题