ruby - 在 redis 或 memcached (ruby) 中存储复杂对象

标签 ruby ruby-on-rails-3 activerecord redis memcached

是否可以在不需要执行 YAML::load/YAML::dump 的情况下将复杂对象(即 ActiveRecords)存储到像 redis 或 memcached 这样的数据库中?

我正在寻找的是类似全局变量的东西 a) 在线程间共享 b) 重新启动我的网络服务器时不刷新(这是可选的)

想要做的事情是创建一个缓存来存储多个方法的结果。目前我正在使用 $global var,但我担心使用多线程网络服务器时会发生什么。

这个项目的代码可以在这里找到:

https://github.com/florianeck/3d_cache/blob/master/lib/three_d/class_method_cache.rb

我对每个建议都很满意!

最佳答案

我尝试使用 Marshal 而不是 YAML 来转储数据,这产生了我可以处理的性能,所以我将尝试 Marshal + Redis 来解决这个问题!

关于ruby - 在 redis 或 memcached (ruby) 中存储复杂对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21989578/

相关文章:

ruby-on-rails - Ruby on Rails : How to override the 'show' route of a resource?

ruby-on-rails - 如何获取 RestClient 执行一个方法所花费的时间?

PHP ActiveRecord - find_by_sql + 包含

ruby - 确定字符串的结尾是否与单独的字符串的开头重叠

ruby - Mac OSX 10.11 的默认 gem 是什么?

ruby-on-rails - Rails 完整引擎路线未加载到 Rails 4 应用程序中

ruby-on-rails - rails : Non id foreign key lookup ActiveRecord

ruby-on-rails - 思考狮身人面像显示选项

ruby 串口 : Listening to input

ruby - 警告 : previous definition of Variable was here - Ruby