PGKeeper - это сервис на Go, который команда Figma разработала для замены устаревшего пулера соединений PgBouncer.
Основные проблемы PgBouncer - однопоточная архитектура, ограничивающая масштабируемость, отсутствие приоритизации трафика и механизмов защиты от перегрузок (например, CoDel), а также высокие риски при массовом создании или закрытии соединений с PostgreSQL.
PGKeeper работает через gRPC, использует механизмы приоритетного допуска запросов и "честного распределения" ресурсов, управляет соединениями с помощью лимитов скорости и предотвращает их "пересоздание". А еще автоматически сбрасывает зависшие транзакции, обрабатывает отмены контекста и греет пул соединений.
Ребяа утверждают, что в 2025 году PGKeeper предотвратил более 20 инцидентов, обеспечив надёжность 99,99% для ключевых сценариев Figma
Ну и только посмотрите какие красивые картиночки
13.05.2026
Похожее
12.05.2026
CPU нагрузка
В статье рассматриваются проблемы оптимизации кода на Go, который нагружает CPU...
11.05.2026
Системное программирование
Неплохая статья, в которой подробно разбирается тема производительности программ...
10.05.2026
Async/Await
Статья про реализацию паттерна Async/Await в Go. Якобы, он упростит написание ко...
09.05.2026
Проще лучше
Автор рассказывает как он запилил крутую базу данных с лок-фри ринг-буфером, пин...