【发布时间】:2011-07-06 18:08:15
【问题描述】:
我在静态变量的堆中加载一个大对象。因此,当我的 ruby 实例启动时,需要一段时间才能将 70MB 左右的数据从 redis 传输到实例的堆中。
我正在运行 Sinatra 来托管使用此数据的 Web 服务,因此当应用程序接收到大量请求时,会产生其他实例并将 70MB 的数据传输到它们的堆中。
有什么方法可以在实例之间共享这个静态变量?
谢谢!
【问题讨论】:
-
Redis 也应该将数据保存在内存中,为什么要在堆上复制它?
-
@Mladen 我们之前也这样做过,但是通过内存中的哈希访问数据要快得多。
标签: ruby heap-memory sharing