Правильный способ закрыть капибару (с помощью poltergeist/phantomjs)
Я выполняю множество заданий через капибару на моем Linux-сервере. Я использую драйвер poltergeist phantomjs. Через некоторое время я получаю много этих ошибок:
Errno::EMFILE Too many open files - socket(2)
Я заглянул в lsof
и, похоже, у меня много таких:
ruby 32316 deployer 320u IPv4 9893211 0t0 TCP localhost:55062 (LISTEN)
Теперь я подозреваю, что это может быть потому, что я не получаю правильно закрытое соединение?
Какой будет правильный способ завершения после выполнения чего-то вроде следующего:
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app, {:js_errors => false})
end
Capybara.current_driver = :poltergeist
Capybara.javascript_driver = :poltergeist
Capybara.run_server = false
@session = Capybara::Session.new(:poltergeist)
@session.visit('some_url')