1

Railsログから次のクエリがあります

  1. データベースに呼び出されました

     Userdetail Load (0.1ms)  SELECT `userdetails`.* FROM `userdetails` WHERE `userdetails`.`user_id` IN (3, 4)
    
  2. キャッシュに呼び出されます

    CACHE (0.0ms)  SELECT `userdetails`.* FROM `userdetails` WHERE `userdetails`.`user_id` = 3 LIMIT 1
    
  3. わからない

    (0.1ms)  SELECT COUNT(*) FROM `votes` WHERE `votes`.`voter_id` = 3 AND `votes`.`voter_type` = 'User' AND `votes`.`votable_id` = 5690 AND `votes`.`votable_type` = 'Post'
    

タイプ3のストアを示すLOADまたはCACHEワードはありません。

このクエリが実行された場所をどのように知ることができますか?

4

1 に答える 1

1

カウントしているからだと思います。CACHEキャッシュに送信された場合はとにかく書き込まれているはずですが、DBで実行されたと思います。

これを確認するには、クエリを連続して数回実行してみてください。後続の呼び出しは次のようにマークする必要があります。CACHE

于 2012-07-31T12:31:58.757 に答える