redigo

package module
v2.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 4, 2022 License: MIT Imports: 4 Imported by: 13

README

提供 alone sentinel cluster 通用API,更换部署模式对业务透明

Mode部署模式 代码完成度 测试完成度 依赖包
alone 单机模式 100% 100% gomodule/redigo
sentinel 哨兵模式 100% 100% FZambia/sentinel
cluster 集群模式 100% 100% mna/redisc
go get -u github.com/letsfire/redigo/v2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultDialOpts

func DefaultDialOpts() []redis.DialOption

DefaultDialOpts 默认连接配置

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

func New

func New(mode ModeInterface) *Client

func (*Client) Bool

func (c *Client) Bool(fn ExecuteFunc) (bool, error)

func (*Client) ByteSlices

func (c *Client) ByteSlices(fn ExecuteFunc) ([][]byte, error)

func (*Client) Bytes

func (c *Client) Bytes(fn ExecuteFunc) ([]byte, error)

func (*Client) Close added in v2.0.2

func (c *Client) Close() error

func (*Client) Execute

func (c *Client) Execute(fn ExecuteFunc) (res interface{}, err error)

func (*Client) Float64

func (c *Client) Float64(fn ExecuteFunc) (float64, error)

func (*Client) Float64s

func (c *Client) Float64s(fn ExecuteFunc) ([]float64, error)

func (*Client) Int

func (c *Client) Int(fn ExecuteFunc) (int, error)

func (*Client) Int64

func (c *Client) Int64(fn ExecuteFunc) (int64, error)

func (*Client) Int64Map

func (c *Client) Int64Map(fn ExecuteFunc) (map[string]int64, error)

func (*Client) Int64s

func (c *Client) Int64s(fn ExecuteFunc) ([]int64, error)

func (*Client) IntMap

func (c *Client) IntMap(fn ExecuteFunc) (map[string]int, error)

func (*Client) Ints

func (c *Client) Ints(fn ExecuteFunc) ([]int, error)

func (*Client) Mode

func (c *Client) Mode() string

Mode 当前客户端使用模式 alone 单机或者代理入口模式 cluster Redis-Cluster集群模式 sentinel Redis-Sentinel哨兵模式

func (*Client) MustExec added in v2.0.3

func (c *Client) MustExec(fun ExecuteFunc) interface{}

func (*Client) Positions

func (c *Client) Positions(fn ExecuteFunc) ([]*[2]float64, error)

func (*Client) String

func (c *Client) String(fn ExecuteFunc) (string, error)

func (*Client) StringMap

func (c *Client) StringMap(fn ExecuteFunc) (map[string]string, error)

func (*Client) Strings

func (c *Client) Strings(fn ExecuteFunc) ([]string, error)

func (*Client) Subscribe

func (c *Client) Subscribe(fn SubscribeFunc) error

func (*Client) Uint64

func (c *Client) Uint64(fn ExecuteFunc) (uint64, error)

func (*Client) Values

func (c *Client) Values(fn ExecuteFunc) ([]interface{}, error)

type ExecuteFunc

type ExecuteFunc func(c redis.Conn) (res interface{}, err error)

ExecuteFunc 普通回调函数

type ModeInterface

type ModeInterface interface {
	io.Closer
	fmt.Stringer
	GetConn() redis.Conn
	NewConn() (redis.Conn, error)
}

type PoolOption

type PoolOption func(pool *redis.Pool)

PoolOption 连接池配置函数

func DefaultPoolOpts

func DefaultPoolOpts() []PoolOption

DefaultPoolOpts 默认连接池配置

func IdleTimeout

func IdleTimeout(value time.Duration) PoolOption

IdleTimeout 最大空闲时长, 超过后关闭连接

func MaxActive

func MaxActive(value int) PoolOption

MaxActive 最多允许的连接数, 0 则无限制

func MaxConnLifetime

func MaxConnLifetime(value time.Duration) PoolOption

MaxConnLifetime 连接生命周期, 超过后关闭连接

func MaxIdle

func MaxIdle(value int) PoolOption

MaxIdle 最多允许空闲的连接数

func TestOnBorrow

func TestOnBorrow(value func(c redis.Conn, t time.Time) (err error)) PoolOption

TestOnBorrow 健康检查, 检测连接是否可用

func Wait

func Wait(value bool) PoolOption

Wait 连接池枯竭是是否阻塞等待

type SubscribeFunc

type SubscribeFunc func(c redis.PubSubConn) (err error)

SubscribeFunc 订阅回调函数

Directories

Path Synopsis
mode

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL