better ConnectionPool