我在我的开发机器(本地主机)上运行webrick有很多延迟.Anytime浏览器发出一个请求,它花了服务器大约8-9秒,然后它显示数据库的内容,其中只包含34000个文本清单,输出到浏览器窗口。
我想解决问题,找出发生了什么事。
我应该从哪里开始故障排除过程?我认为第一件事应该是监视web服务器日志以查看请求。但是在我的开发机器上我可以在哪里找到它们呢?
我知道我可以在我的机器上找到apache日志:
/var/log/apache2/access_log但是Rails不能运行apache,对吗?它在端口3000上运行webrick
请帮帮忙。
发布于 2012-03-28 04:05:40
在开发模式下运行rails时,如下所示:
rails %s
..it通常会自动将WEBrick作为前台进程运行,并针对每个客户端请求将您要查找的信息类型打印到控制台。您可以通过编辑来检查/调整一些日志记录参数:
配置/环境/开发.rb
由于WEBrick是默认的web服务器,所以除非您已将环境配置为这样做,否则Apache与它没有任何关系。正如您所提到的,默认端口是3000。
较新版本的Rails还可以为需要很长时间返回的查询自动记录数据库查询计划。
对于超过此值的查询,
记录查询计划(适用于SQLite、MySQL和PostgreSQL) config.active_record.auto_explain_threshold_in_seconds = 0.5
您还应该检查您的特定数据库,以根据您试图优化的模式和查询进行适当的索引。
https://stackoverflow.com/questions/9896712
复制相似问题