0

我的 Rails 应用程序中有一个控制器。这是一个漏洞扫描器,每次执行代码时,都会使用 nokogiri 从 xml 文件中读取签名。这显然不是最好的方法。

目前有 4 个数组,每个数组有约 600 个元素,数量不多,但代码每天会执行几千次(大量扫描)所以所有这些加起来,我有一个小的 vps(2gb ram,2 个核心)。将它们存储在代码中会使它看起来很混乱,我不确定将它们存储在代码中是否被认为是最佳实践。

这样做的最佳方法是什么?有没有办法将它缓存在内存中,这样它就不会每次都读取文件?我怎样才能优化这个过程?

4

3 回答 3

2

这不是memcached的作用吗?

此外,对于 Phusion Passenger 服务器,您在 config.ru 运行时加载的任何内容都将存在于 pre-fork 中。然后,这将在每个控制器基本上没有开销的情况下可用。

于 2013-06-10T15:03:11.867 回答
0

Memcached 可以在这里为您提供帮助。看看这个

于 2013-06-10T14:59:42.170 回答
0

我会创建一个本地服务,所有必要的数据都已经加载到内存中,等待函数调用。

这可以通过EventMachine Ruby 库轻松实现。

于 2013-06-10T17:38:38.950 回答