2013-02-15 28 views
0

我在考慮使用Redis存儲我不希望從數據庫中拉出的內容,用戶數,跟隨者ID,Rails必須具備的長URL吐出來...等等,我想找出一種方法來設計我的應用程序來做到這一點。將使用Redis作爲Rails數據存儲時應用的設計模式

我想知道是否採取redis是持久性數據存儲的方法,在運行應用程序之前我必須先加載它。

因此,像

Post < ActiveRecord::Base 
    def thumbnail_url 
     #get redis value 
    end 
end 

,或者我應該實際上是Redis的思維作爲一個更短暫一種存儲在哪裏,我會做同樣的事情,這樣

Post < ActiveRecord::Base 
    def thumbnail_url 
     if redis value exists 
     get it 
     else 
     do some ruby stuff and return string #hit Active record 
     end 
    end 
end 

或者有另一種方式我應該考慮這個?

回答

1

你見過這顆寶石嗎? https://github.com/nateware/redis-objects,這將有助於積極的記錄。

+0

是的我只是做了,問題是似乎沒有辦法來初始化值。所以我看不到一種方法來讓...說... post.redis_thumbnail_url如果它尚未在Redis中,則從ActiveRecord返回一個值。 – concept47 2013-02-15 02:27:25

+0

聽起來像你需要一個NullObject設計模式http://robots.thoughtbot.com/post/12179019201/design-patterns-in-the-wild-null-object – 2013-02-15 02:32:06

相關問題