Я столкнулся с некоторыми проблемами с пулом с использованием Sequel gem и Postgres. Я считаю, что мои задания Sidekiq не освобождают подключения, которые они используют из пула.Как освободить соединение Sequel при использовании пула
подключиться к БД при запуске Sidekiq с помощью:
DB = Sequel.connect(db_uri, max_connections: 20)
Я думал о какой-то Sidekiq промежуточного слоя, как это:
module Middleware
class SequelDisconnector
def call(*args)
yield
ensure
DB.release_active_pool_connection
end
end
end
Я знаю, что есть DB.disconnect
но разъединяет полностью из DB правильно? Я хочу удостовериться, что мой рабочий освобождает свою связь, не убивая ни одно из соединений других работников.
Есть ли способ достичь этого или у меня есть какой-то недостаток в моих рассуждениях?
Ya, Документы Sequel не очень хорошо объясняют, почему очень важно использовать пул соединений. Похоже, вам нужно позвонить 'disconnect', чтобы выпустить соединение обратно в пул. Я прошел через драгоценный камень, но я все еще не совсем уверен. – Anthony