JRuby运行程序的多个实例

时间:2013-01-16 19:03:02

标签: ruby multithreading jruby fork

我正在尝试编写一个负载测试,它可以模拟大约在同一时间创建数千个ActiveRecord对象。

因此,基本思想是获取数千个不同ActiveRecord对象的ID,并为每个对象创建属于它的另一个对象。

分叉在JRuby上运行不正常,所以我不能使用分叉。

我正在考虑使用运行相同ruby脚本的bash脚本,并将不同的参数传递给它。

有更好的方法吗?

一点sudo代码:

for ids in [1,2,3,3,4,4,5,6,6,6...] |id|
  MyMode.find(1).create_some_other_model(1) // happen in the background
end

所以我几乎不希望在单独进程的背景上发生的行使每个程序都等待整个程序。

1 个答案:

答案 0 :(得分:0)

当您使用JRuby时,您可以使用线程(JRuby线程是一个Java线程,它反过来映射到本机线程);有关示例,请参阅this post,还可以查看JRuby wiki