Рубрики
Технологии

Написали пулер для PostgreSQL и выкатили в опенсорс …

Написали пулер для PostgreSQL и выкатили в опенсорс

Разработали альтернативу существующим решениям, потому что среди них не нашлось пулера, способного работать с нашей нагрузкой. Наш инструмент простой и надёжный, как PgBouncer, и при этом производительный, как Odyssey.

Мы назвали его PgDoorman и сделали доступным для всех инженеров: https://ozon.tech/pg_doorman

Наш пулер адаптивно управляет очередью входящих соединений, чтобы предотвратить перезагрузки. Он ограничивает общее число подключений к базе для всех пользовательских пулов. Когда лимит достигнут, координатор освобождает простаивающее соединение и использует его для ожидающего подключения клиента.

PgDoorman поддерживает все популярные драйверы и умеет повторно использовать состояние подготовленных запросов, в том числе в сценариях, где драйвер отправляет запросы без имени. Это позволяет сокращать повторную работу PostgreSQL по подготовке и планированию выполнения запросов.

На проде мы используем PgDoorman с приложениями на Go, .NET, Python и Node.js. И вам рекомендуем.