Jak pgBouncer pomaga przyspieszyć Django

Mam kilka poleceń zarządzania opartych na gevent. Ponieważ moje polecenie zarządzania sprawia, że ​​tysiące są żądaniami, mogę zmienić wszystkie wywołania gniazd na połączenia nieblokujące za pomocą Gevent. To naprawdę przyspiesza moją aplikację, ponieważ mogę jednocześnie wysyłać żądania.

Obecnie wąskim gardłem w mojej aplikacji wydaje się być Postgres. Wydaje się, że dzieje się tak, ponieważ biblioteka Psycopg używana do łączenia się z Django jest napisana w C i nie obsługuje połączeń asynchronicznych.

Czytałem również, że używanie pgBouncer może przyspieszyć Postgres o 2X. Brzmi świetnie, ale byłoby wspaniale, gdyby ktoś mógł wyjaśnić, jak działa i pomaga pgBouncer?

Dzięki

questionAnswers(2)

yourAnswerToTheQuestion