gpt4 book ai didi

ruby-on-rails - Rails Impressionist 进行昂贵的查询

转载 作者:搜寻专家 更新时间:2023-10-30 20:39:36 26 4
gpt4 key购买 nike

我正在使用 charlotte-ruby/impressionist 来跟踪我的 Rails 应用程序中的印象。

我有一个非常简单的实现,类似于快速入门指南中显示的内容。有效地:- Controller :印象派 Action :[:show, :index]- 查看:@post.impressionist_count- 型号:is_impressionable

我今天遇到了一些数据库排队问题,在检查 Heroku Postgres 中的昂贵查询时发现了以下问题: enter image description here

我立即从我的 Controller / View 中删除了印象派(在 14:30),您可以看到它是如何影响性能的: enter image description here

有没有人遇到过印象派 gem 的类似问题?从数据库的角度来看,为什么它如此昂贵有什么想法吗?

编辑:

这是添加的索引:

  add_index "impressions", ["controller_name", "action_name", "ip_address"], name: "controlleraction_ip_index", using: :btree
add_index "impressions", ["controller_name", "action_name", "request_hash"], name: "controlleraction_request_index", using: :btree
add_index "impressions", ["controller_name", "action_name", "session_hash"], name: "controlleraction_session_index", using: :btree
add_index "impressions", ["impressionable_type", "impressionable_id", "ip_address"], name: "poly_ip_index", using: :btree
add_index "impressions", ["impressionable_type", "impressionable_id", "request_hash"], name: "poly_request_index", using: :btree
add_index "impressions", ["impressionable_type", "impressionable_id", "session_hash"], name: "poly_session_index", using: :btree
add_index "impressions", ["impressionable_type", "message", "impressionable_id"], name: "impressionable_type_message_index", using: :btree
add_index "impressions", ["user_id"], name: "index_impressions_on_user_id", using: :btree

最佳答案

@Ken Hampson - 感谢推荐。寻找长时间运行的 SELECT 查询确定了另一个需要的索引。添加后,POOF,一切都变得更好了。很奇怪,这个问题是在网站运行几个月后才出现的。印象中一定是打断了 Camel 背的大小。感谢您的帮助!

对于因数据库查询(在 Heroku 上)而遇到类似性能下降问题的任何人,请转至 https://postgres.heroku.com/databases/your-database-name查看“昂贵的查询”表是找出您可能遗漏索引的好方法。

关于ruby-on-rails - Rails Impressionist 进行昂贵的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25633177/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com