繁体   English   中英

Rails - Mongoid:生产和开发之间的问题缓慢

[英]Rails - Mongoid : Slow problem between production and development

我的Rails应用程序有问题。

我在版本3.2.22的rails和2.2.5的ruby连接到mongodb 2.6

问题是我在简单甚至更复杂的查询上的性能差异很大。

例如 :

我运行rails c开发然后执行我的功能(相当复杂)它在30秒后响应我运行rails c生产,我执行与前一个相同的功能,它在6分30秒后响应,慢7倍。 所以我尝试在'生产'中复制粘贴配置'开发',但结果保持不变,对于Gemfile也是如此。

我查看项目的所有代码,环境生产和开发之间没有区别。

您是否知道这两种环境之间铁轨的核心差异? 有没有人遇到过这个问题?

重要的是,我当然是连接到同一个数据库

提前致谢。

您尚未指定mongo(Ruby驱动程序)和mongoid版本,如果它们已经过时,您可能需要升级和/或调整代码以适应您的环境。

要确定数据库或应用程序中是否发生减速,请使用此处所述的命令监视: https//docs.mongodb.com/ruby-driver/current/tutorials/ruby-driver-monitoring/#command-monitoring

查看与您的查询对应的日志条目,并记下它们在每个环境中的日志记录方式。 通过实现自定义事件订阅者,您还可以保存要发送的命令,并验证它们在两个环境之间是否相同。

我懂了!

当我看到生产中的请求数量时,我立即想到了查询缓存。

我找到了mongo的'identity_map_enabled'参数,所以我将其改为true,然后跳魔法!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM