问题标签 [ruby-enterprise-edition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
3886 浏览

ruby - 为什么 6.times.map 在 ruby​​ 1.8.7 中有效,但在 1.8.6 中无效

以下代码片段在 Mac OS X 上的 1.8.7 中运行良好,但在 Ubuntu 上的 1.8.6 中运行良好。为什么?有解决方法吗?

适用于 1.8.7:

但不在 1.8.6 中:

为什么有区别?1.8.6 的解决方法是什么?

0 投票
1 回答
580 浏览

ruby-on-rails - Ruby 1.8.7 与 Ruby 企业版

据我了解,REE 在垃圾收集方面更好,与Passenger 结合使用时速度更快。

与 Ruby 1.8.7 相比,使用 REE 有什么缺点吗?REE 上的随机错误?兼容性错误?不建议初学者?

这是我发现的唯一结果:Ruby Enterprise Edition vs Ruby 1.9

任何帮助,将不胜感激。

0 投票
3 回答
3201 浏览

ruby-on-rails - Rails/Passenger:没有要加载的文件——钱(MissingSourceFile)

我正在尝试将 Rails 应用程序(在开发中运行良好)部署到生产服务器上。我已经安装并配置了 Apache、Passenger 和必要的 gem。重新启动 apache 并导航到服务器后,出现以下错误:

gem list money显示:

服务器上的irb会话:

宝石是必需的config/environment.rb

这里发生了什么?

编辑: gem 以 root 身份安装:

编辑2:在没有成功解决这个障碍之后,我意识到Passenger 有点与Ruby Enterprise Edition 一起使用,所以我尝试安装它。之后,我使用 Ruby Enterprise 的 gem 版本来安装所有需要的 gem。现在,当我重新启动 apache 并导航到我的服务器时,我得到:

在旧版本或新版本的 Ruby 中需要记录器都没有问题:

路径或权限肯定有问题,但我完全按照Passenger 和Ruby Enterprise Edition 安装程序中的说明进行操作。还有其他想法吗?

0 投票
2 回答
2392 浏览

ruby-on-rails - Rails/Passenger:没有要加载的文件——捆绑器

我有一个运行旧版本 Rails (2.2.2) 和 Passenger 的应用程序,我使用 Ruby Enterprise Edition 1.8.7 启动并运行。然而,我很快发现旧版本的 Rails 和 Ruby 1.8.7 之间存在一些不兼容,并决定降级到 REE 1.8.6。但是,现在应用程序无法以以下方式启动LoadError

我假设某些路径设置不正确,但我不确定在哪里看。有什么建议么?

0 投票
3 回答
1665 浏览

imagemagick - 从 8.04 升级后,RMagick 在 Ubuntu 10.04 上损坏

我最近将一台服务器从 Ubuntu 8.04 升级到 10.04,它似乎破坏了 RMagick,出现以下错误:

libWand.so.10:无法打开共享对象文件:没有这样的文件或目录 - /opt/ruby-enterprise-1.8.7-2009.10/lib/ruby/gems/1.8/gems/rmagick-2.12.2/lib/RMagick2 。所以

在网上四处寻找想法,我决定尝试将其符号链接到 libMagickCore.so.2.0.1,并将 libWand.so.10 符号链接到 libMagickWand.so.2.0.1。这给了我一个新的错误:

此 RMagick 安装配置了 ImageMagick 6.3.7,但 ImageMagick 6.5.7-8 正在使用中。

从那以后,我一直在尝试各种谷歌搜索、卸载和重新安装 RMagick 和各种 ImageMagick 库,但没有运气。我认为某些库可能是从源代码构建的,或者是由以前的员工“手动”安装的。

---(后来补充:)

似乎 RMagick 2.13.0 或 2.13.1 已修复为与 ImageMagick 6.5.7 一起使用,但是当我尝试将其中一个版本指定为 gem install 时,它要么:(a)似乎安装,但只有 2.12。 2 出现在“宝石列表”中,我的 rails 应用程序只加载了 2.12.2;(b) 如果我指定 2.13.0,则出现错误“错误:在任何存储库中都找不到有效的 gem 'rmagick' (= 2.13.0)”。“gem -v”表示 1.3.5。

- -(然后:)

如此处所述将 RUbyGems 更新到 1.3.7:http ://wiki.joyent.com/all-accelerators:kb:rubygems没有改变任何东西。

0 投票
1 回答
431 浏览

ruby-on-rails-3 - ruby 企业和 Rails<3 应用程序

我正在尝试使用 ruby​​EE 运行 Redmine,但我经常面临一些 action_controller 问题。当我运行独角兽时,我得到:

当我删除供应商目录时,我得到:

但是,我安装了这些宝石:

0 投票
1 回答
240 浏览

ruby-on-rails - RoR:从 Ruby 到企业 Ruby 版(没有节省内存?)

我刚刚尝试切换到 Ruby 企业版,如下所述:http ://www.rubyenterpriseedition.com/download.html(案例:Ubuntu)。

REE 承诺节省大约 30% 的内存,但就我而言,我仍然有 3 个 ruby​​ 实例,每个实例大约 100MB - 就像以前一样(我认为这对于几乎空闲的服务器来说太多了......)。

所以我怀疑“旧”红宝石仍在使用,但我不确定。在安装 REE 之后(按照乘客的说明),我在 Apache 配置文件中所做的更改是一些路径:

之前:

LoadModule 乘客模块 /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4
PassengerRuby /usr /bin/ruby1.8

新的,带有 REE:

LoadModule 乘客模块 /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2.14/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-2.2。 14
乘客Ruby /usr/local/bin/ruby

我是否需要做任何其他事情(例如,修改一些其他路径)?如果是这样,是什么以及如何?

感谢您的帮助!
汤姆

0 投票
3 回答
981 浏览

ruby - Ruby 企业版的新安装 - 识别“gem”但不识别“sudo gem”

我刚刚在一个全新的 Ubuntu 10.04 服务器上安装了 Ruby 企业版。我去安装我的第一个 gem,遇到了一个我以前从未见过的奇怪问题。

没有 sudoing,如果我只输入“gem”,我就会得到关于 gem 的简介。我可以切换到 root 并执行gem install gemname或提供 gem exe 的完整路径,但如果我这样做了,sudo gem install gemname我会收到一个奇怪的错误sudo: gem: command not found

如果我不gem install gemname使用 sudo,它会告诉我我无权更改 gem 文件夹(这很公平)。基本上,当我 sudo 时,似乎发生了一些有趣的事情。

我已将 Ruby bin 路径添加到 .bashrc 文件中的 PATH 变量中,如下所示:

然后用 .bashrc 重新加载source。任何想法,任何人?

0 投票
2 回答
2115 浏览

ruby-on-rails - 生成 RDoc 失败,目录 .ext/rdoc 已存在

我只是在安装 Ruby Enterprise,无法更改 Ruby Enterprise 安装程序调用的这个崩溃命令的输出目录。

那么如何删除目录以满足此异常:

生成 RDoc 文档 ./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./runruby.rb --extout=.ext -- "./bin/rdoc " --all --ri --op ".ext/rdoc" "。"

目录 .ext/rdoc 已经存在,但看起来它不是 RDoc 目录。因为 RDoc 不想冒险破坏任何现有文件,所以您需要指定不同的输出目录名称(使用 --op 选项)。

0 投票
1 回答
553 浏览

ruby - 转换为 Ruby Enterprise 1.8.7 后内存大小增加

从 Ruby 1.8.6 升级到 Ruby Enterprise 1.8.7 p334 时,内存大小几乎翻了一番。我们升级的五台 Fedora 8 服务器中的每一台都出现了这种情况。我们使用乘客 3.0.4 运行 Rails 1.2.6。

Munin 通过对来自$ ps axo pid,comm,pmem,vsz,rsz. (虚拟内存大小和常驻内存大小都增加相同的量)

我意识到这些列通常夸大了进程实际使用的内存量,但如果将其用于测量 1.8.6 和 1.8.7 REE,它们应该同样臃肿,因此仍然具有可比性。

此外,机器的已提交内存(如 /proc/memstat 中所列)现在经常过度使用,这是新的。提交的内存量显着增加,看起来我们现在进入了交换空间。

我们还没有调整垃圾收集,但我看不出这会如何影响整体内存占用。

我已经按照 Phusion FAQ 的建议打开了 GC.copy_on_write_friendly 变量。

内存使用量增加 100% 的原因是什么,我该如何解决?任何关于如何修复,甚至更好的监控/调试的想法,都值得赞赏。

谢谢。

- -更新

为了检查性能,我已将一台服务器上的运行实例数 (PassengerMaxPoolSize) 从 12 个减少到 10 个。另一方面,我将PassengerPoolIdleTime 提高到15 分钟。我有第三个被用作对照。

我正在考虑将非企业版 1.8.7p334 放在服务器上,看看它是 1.8.7 还是企业版。

其他人对此类问题有任何经验吗?

查看单个 Rails 进程,在 1.8.6 中每个进程大约 120MB,在 REE 1.8.7 中每个进程大约 175MB,如乘客内存统计信息所述。

---更新2

我将 MRI 1.8.7 放在服务器上与 REE 1.8.7 进行比较。结果更糟,包括更高的内存驻留大小数和乘客内存统计数据。当然,交换开始了。

这让我相信 1.8.7 的占用空间比 1.8.6 更大。

---更新3

我将 MRI 1.8.7 放在服务器上,在内存使用方面比 MRI 1.8.6 差得多,所以我立即回到 MRI 1.86。

I've run an average of Rails process size, as listed by passenger-memory-stats. The REE 1.8.7 processes were 73 MB larger, which seems rather large.

This means that I need to have significantly less processes running to fit in the same memory footprint.

Will see how they perform with fewer processes. I'm also starting the GC tuning.

---UPDATE 4

Seems Ruby 1.8.7 does not support Rails 1.2.6. The first officially supported version of 1.8.7 is Rails 2.1. We'll know after the upgrade if that's the root of the problem.