在rails app中放置辅助数组的位置?

时间:2017-09-13 08:28:21

标签: ruby-on-rails

我有一个辅助数组,它是页面加载所需的一些昂贵的预计算的结果。我不想出于各种原因将它存储到数据库中,而是宁愿将它放在内存中。这是可取的吗?如果是这样,我可以把它放在哪里(这个"缓存"数组)?使用全局变量$array

是一种好习惯

我尝试过:

class MyController
  def precompute
    @@array = # pre-computation
  end

  def index
    # use @@array data for page load; pre-computation done earlier elsewhere
  end
end

module MyModule
  def precompute
    @@array = # pre-computation
  end
  def array; @@array end
end

class MyController
  def index
    # use MyModule.array data for page load; pre-computation done earlier elsewhere
  end
end

这两个都不起作用,可能是由于多线程。在预计算完成一段时间后,Rails抱怨类变量不再被初始化。

0 个答案:

没有答案