在 ruby​​ 进程之间共享堆

发布于 2024-10-19 16:21:44 字数 207 浏览 4 评论 0原文

我正在将一个大对象加载到静态变量的堆中。因此,当我的 ruby​​ 实例启动时,需要一段时间才能将 70MB 左右的数据从 Redis 传输到实例的堆中。

我正在运行 Sinatra 来托管使用此数据的 Web 服务,因此当应用程序收到大量请求时,其他实例会生成并将 70MB 的数据传输到其堆中。

有什么方法可以在实例之间共享这个静态变量吗?

谢谢!

I'm loading a large object in the heap in a static variable. So when my ruby instance starts, it takes a while to transfer 70MB or so of data from redis into the instance's heap.

I'm running Sinatra to host a the web service that uses this data, so when the application receives a lot of requests, other instances spawn up and also transfer 70MB of data over to their heap.

Is there any way that this static variable can be shared between instances?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夏至、离别 2024-10-26 16:21:44

所以我发现这是不可能的。 Java 可以做到这一点是因为它的虚拟机,但不幸的是 ruby​​ 不能。

So I figured out this was not possible. Java can do this because of its virtual machine, but unfortunately ruby can't.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文