据我所知,当我们在 64 位 Ruby 上运行 Ruby 应用程序时,它比 32 位 Ruby 消耗更多的内存,这是由于指针地址空间。
我的机器有 64GB 内存,所以为了访问全部 64GB 内存,我安装了 64 位操作系统。
- 是否可以在 64 位操作系统上安装 32 位 Ruby?
- 通过在 64 位操作系统上安装 32 位 Ruby,我的 32 位 Ruby 是否能够使用 64 GB RAM?
- 在 64 位操作系统上运行 32 位 Ruby 的优缺点是什么?
我注意到在 64 位 Ruby 上运行我的 Ruby on Rails 应用程序比 32 位 Ruby 消耗更多的 RAM。我正在使用 Phusion Passenger,因此它为每个请求分叉或创建新的 Ruby 进程,因此每个单独的 Ruby 进程(用户请求)在 32 位 Ruby 中限制为 2 GB,或者整个 Ruby 进程在 32 位中仅限访问 2GB-一点鲁比。
我的 Rails 应用程序代码库很大,我计划为单个服务器中的多个客户端复制与多个 Rails 应用程序相同的代码,因此每 MB RAM 对我来说都很重要,所以如果有更多 RAM 可用,我可以为其他客户端运行其他应用程序。
有关应用程序架构的更多信息,请参阅“ (使用 phusion 乘客 + Nginx)运行具有多个实例名称和相同端口 (80) 的相同 rails 应用程序”。