Я использую в своем приложении селеновый веб-драйвер и хочу создать пул соединений с несколькими браузерами. Я создаю класс BrowserProvider
и пытаюсь сохранить эти соединения в кеше rails. Как то так
class BrowserProvider
def self.cache
Rails.cache
end
CACHE_KEY = 'browser_hash'
def self.init_pool
data = cache.read(CACHE_KEY) || []
return if data.count >= 3
(3 - data.count).times do
browser = Selenium::WebDriver.for :chrome
data << browser
cache.write CACHE_KEY, data
end
end
end
Но когда я пытаюсь инициализировать пул и что-то делать в этих браузерах, я получаю сообщение об ошибке IOError (closed stream)
. Можно ли как-то сохранить соединения с браузером в кеше rails и восстановить его в другом классе или модели?
Я буду признателен за любую помощь