簡體   English   中英

將章魚寶石與Rails SQL緩存一起使用

[英]Using Octopus gem with Rails SQL Caching

我們在Rails應用程序中使用了章魚,將讀取的查詢直接轉發到我們的從屬盒,並寫入到我們的主盒。 不得不說它是一個偉大的寶石,但是我們注意到對從屬服務器的查詢放棄了Active Record的默認SQL緩存。 某種程度的失敗是為了達到水平擴展數據庫服務器的目的,只是失去了有助於擴展的緩存層。

是否有人對如何解決此問題有想法,還是有更好的寶石來使用。 我們不需要章魚提供的分片功能。 只是復制。

提前謝謝

為連接打開SQL緩存的方式是執行類似的操作

ActiveRecord::Base.connection.cache do
    # the query cache is used here
end
# and turned off by here

對於主要的ActiveRecord連接導軌,有一個機架中間件,可以為每個請求進行設置。 如果您希望這種情況發生在您的從屬連接中,那么您需要做一些類似的事情來為第二個連接啟用緩存(比rack中間件的around_filter稍微容易around_filter

我對章魚不太熟悉,但是這兩個連接似乎是獨立的-activerecord不會知道使您的讀取連接上的緩存無效,因為您對其他連接進行了一些寫操作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM