2016-10-24 88 views
0

현재 데이터베이스 연결 풀링을 위해 Pgbouncer (데이터베이스 서버에 설치됨)를 사용하고 있습니다. 동시에 우리는 자체 연결 풀이있는 Npgsql 라이브러리를 사용합니다. 나는 우리가 Npgsql에서 풀링을 해제하고 오직 Pgbouncer만을 사용해야한다는 권고를 읽었습니다.Npgsql 및 PgBouncer 폴링

Npgsql에서 연결 풀링을 사용하지 않도록 설정할 때 성능 문제가 있습니다. 내 테스트에 따르면, pgbouncer에 연결하는 데 100 밀리 초가 걸립니다. PgBouncer로 서버에 대기 시간은 < 1ms입니다.

5 개의 연결로 5 개의 쿼리를 실행하는 데는 500ms 이상 걸릴 수 있습니다. 이는 너무 많습니다.

올바른 사용인가요? 연결 지연으로 인해 성능이 저하되고 있습니다.

+0

풀에 유휴 연결이없는 경우를 제외하고는 pgbouncer에 대한 연결을 설정하는 데 100ms가 걸리지 않아야합니다. 연결을 제대로 종료했는지 확인하고, PostgreSQL 로그에서 어떤 일이 일어나는지 따를 수 있습니다. –

+0

참고 : pgbouncer가 동일한 컴퓨터에서 실행되거나 앱과 매우 유사하다고 가정합니다 ... –

답변

0

네트워크의 다른 서버에서 pgbouncer에 연결을 시도했지만 8 ~ 22 밀리 초가 걸렸습니다. 나는 그것이 어떤 네트워크 문제라고 가정하고있다.