小编use*_*735的帖子

你如何限制MongoDB的更新脚本?

我有一个非常大的MongoDB,我需要更新,所以我写了一个javascript的事情来做:

for (var i = 0; i < 1000000; i++) {
    db.test.update(
        {foo_field: dataArray1[i]},
        {$set: { bar_field: dataArray2[i]}},
        {upsert:false}
    )
}
Run Code Online (Sandbox Code Playgroud)

我担心这个脚本会在很短的时间间隔内执行太多的写操作,并且会降低数据库的性能,所以我想根据复制延迟对速率进行限速.

但是,我找不到强制脚本睡眠或等待一定数量毫秒的方法.它抱怨setInterval和setTImeout,说它们"未定义".这在Mongo有可能吗?

mongodb

5
推荐指数
2
解决办法
1141
查看次数

为什么Rails没有使用正确版本的Ruby?

我安装了Ruby 2.0,但Rails无法识别它并告诉我升级到1.9.3.

当我跑:

rails console
Run Code Online (Sandbox Code Playgroud)

我明白了:

Rails 4 prefers to run on Ruby 2.0.

You're running
  ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]

Please upgrade to Ruby 1.9.3 or newer to continue.
Run Code Online (Sandbox Code Playgroud)

所有Rails命令都会发生这种情况.rails new,rails s等等,但是,我绝对有安装了Ruby 2.0:

ruby -v
ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-darwin12.3.0]
Run Code Online (Sandbox Code Playgroud)

对于不正确的Ruby默认版本,它似乎也不是问题:

rvm list

rvm rubies

ruby-1.9.3-p429 [ x86_64 ]
=* ruby-2.0.0-p195 [ x86_64 ]

# => - current
# =* - current && default
#  * - default
Run Code Online (Sandbox Code Playgroud)

我在某处读到了我的PATH变量可能存在问题:

printenv PATH
/Users/Aoeu/.rvm/gems/ruby-2.0.0-p195/bin:/Users/Aoeu/.rvm/gems/ruby-2.0.0- p195@global/bin:/Users/Aoeu/.rvm/rubies/ruby-2.0.0-p195/bin:/Users/Aoeu/.rvm/bin:/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin:/bin:/usr/sbin:/sbin …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

4
推荐指数
1
解决办法
1133
查看次数

标签 统计

mongodb ×1

ruby ×1

ruby-on-rails ×1