我寫下面的代碼。目的是爲了避免查詢我的數據庫與活動記錄。ActiveRecord單身危險?
向數據庫發出請求的唯一原因是更新(after_save)。
class Configuration < ActiveRecord::Base
def self.instance
ConfigurationSingleton.instance.active_record_instance
end
class ConfigurationSingleton
include Singleton
def initialize
@active_record_instance = Configuration.first || Configuration.new
end
def active_record_instance
@active_record_instance
end
end
after_save Proc.new { ConfigurationSingleton.instance.active_record_instance.reload }
end
它似乎在發展模式,但我覺得不安全。 這個代碼安全地運行在apache乘客生產與幾個單獨的過程?