我的初始化失败了。
实现init的更好方法是什么?
@client = Mongo::Client.new([ cfg["HOST"] ], :database => cfg["NAME"])
至少重试10次。
我找到了类似的解决方案
begin
coll.insert( { "counter" => i, "named" => "name#{i}" })
rescue Mongo::ConnectionFailure => ex
sleep(0.5)
coll.insert( { "counter" => i, "named" => "name#{i}" })
end
有没有优雅的方法呢?因为我需要在我的项目很多地方做类似的init
答案 0 :(得分:0)
您可以将连接逻辑提取到另一个方法并执行
def connect
try_connecting
rescue Mongo::ConnectionFailure => ex
fail = true
sleep(0.5)
ensure
return defined?(fail)
end
10.times { break unless connect }
或者这个:
select country,state,min(value) from table1 group by country;