Documentation ¶
Index ¶
- Variables
- func SetIdleCheckFrequency(d time.Duration)
- type Conn
- type ConnPool
- func (p *ConnPool) Close() (retErr error)
- func (p *ConnPool) Closed() bool
- func (p *ConnPool) FreeLen() int
- func (p *ConnPool) Get() (*Conn, error)
- func (p *ConnPool) Len() int
- func (p *ConnPool) NewConn() (*Conn, error)
- func (p *ConnPool) PopFree() *Conn
- func (p *ConnPool) Put(cn *Conn) error
- func (p *ConnPool) ReapStaleConns() (n int, err error)
- func (p *ConnPool) Remove(cn *Conn, reason error) error
- func (p *ConnPool) Stats() *PoolStats
- type PoolStats
- type Pooler
- type SingleConnPool
- func (p *SingleConnPool) Close() error
- func (p *SingleConnPool) Closed() bool
- func (p *SingleConnPool) First() *Conn
- func (p *SingleConnPool) FreeLen() int
- func (p *SingleConnPool) Get() (*Conn, error)
- func (p *SingleConnPool) Len() int
- func (p *SingleConnPool) Put(cn *Conn) error
- func (p *SingleConnPool) Remove(cn *Conn, _ error) error
- func (p *SingleConnPool) Stats() *PoolStats
- type StickyConnPool
- func (p *StickyConnPool) Close() error
- func (p *StickyConnPool) Closed() bool
- func (p *StickyConnPool) First() *Conn
- func (p *StickyConnPool) FreeLen() int
- func (p *StickyConnPool) Get() (*Conn, error)
- func (p *StickyConnPool) Len() int
- func (p *StickyConnPool) Put(cn *Conn) error
- func (p *StickyConnPool) Remove(cn *Conn, reason error) error
- func (p *StickyConnPool) Stats() *PoolStats
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrClosed = errors.New("redis: client is closed") ErrPoolTimeout = errors.New("redis: connection pool timeout") )
Functions ¶
func SetIdleCheckFrequency ¶
Types ¶
type Conn ¶
type Conn struct { NetConn net.Conn Rd *bufio.Reader Buf []byte Inited bool UsedAt time.Time ReadTimeout time.Duration WriteTimeout time.Duration }
func (*Conn) RemoteAddr ¶
type ConnPool ¶
type ConnPool struct { DialLimiter *ratelimit.RateLimiter OnClose func(*Conn) error // contains filtered or unexported fields }
func NewConnPool ¶
func (*ConnPool) ReapStaleConns ¶
type PoolStats ¶
type PoolStats struct { Requests uint32 // number of times a connection was requested by the pool Hits uint32 // number of times free connection was found in the pool Waits uint32 // number of times the pool had to wait for a connection Timeouts uint32 // number of times a wait timeout occurred TotalConns uint32 // the number of total connections in the pool FreeConns uint32 // the number of free connections in the pool }
PoolStats contains pool state information and accumulated stats. TODO: remove Waits
type SingleConnPool ¶
type SingleConnPool struct {
// contains filtered or unexported fields
}
func NewSingleConnPool ¶
func NewSingleConnPool(cn *Conn) *SingleConnPool
func (*SingleConnPool) Close ¶
func (p *SingleConnPool) Close() error
func (*SingleConnPool) Closed ¶
func (p *SingleConnPool) Closed() bool
func (*SingleConnPool) First ¶
func (p *SingleConnPool) First() *Conn
func (*SingleConnPool) FreeLen ¶
func (p *SingleConnPool) FreeLen() int
func (*SingleConnPool) Get ¶
func (p *SingleConnPool) Get() (*Conn, error)
func (*SingleConnPool) Len ¶
func (p *SingleConnPool) Len() int
func (*SingleConnPool) Put ¶
func (p *SingleConnPool) Put(cn *Conn) error
func (*SingleConnPool) Stats ¶
func (p *SingleConnPool) Stats() *PoolStats
type StickyConnPool ¶
type StickyConnPool struct {
// contains filtered or unexported fields
}
func NewStickyConnPool ¶
func NewStickyConnPool(pool *ConnPool, reusable bool) *StickyConnPool
func (*StickyConnPool) Close ¶
func (p *StickyConnPool) Close() error
func (*StickyConnPool) Closed ¶
func (p *StickyConnPool) Closed() bool
func (*StickyConnPool) First ¶
func (p *StickyConnPool) First() *Conn
func (*StickyConnPool) FreeLen ¶
func (p *StickyConnPool) FreeLen() int
func (*StickyConnPool) Get ¶
func (p *StickyConnPool) Get() (*Conn, error)
func (*StickyConnPool) Len ¶
func (p *StickyConnPool) Len() int
func (*StickyConnPool) Put ¶
func (p *StickyConnPool) Put(cn *Conn) error
func (*StickyConnPool) Stats ¶
func (p *StickyConnPool) Stats() *PoolStats
Click to show internal directories.
Click to hide internal directories.