pubsub

package
v2.16.0 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2022 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Addrs            []string      `mapstructure:"addrs"`
	DB               int           `mapstructure:"db"`
	Username         string        `mapstructure:"username"`
	Password         string        `mapstructure:"password"`
	MasterName       string        `mapstructure:"master_name"`
	SentinelPassword string        `mapstructure:"sentinel_password"`
	RouteByLatency   bool          `mapstructure:"route_by_latency"`
	RouteRandomly    bool          `mapstructure:"route_randomly"`
	MaxRetries       int           `mapstructure:"max_retries"`
	DialTimeout      time.Duration `mapstructure:"dial_timeout"`
	MinRetryBackoff  time.Duration `mapstructure:"min_retry_backoff"`
	MaxRetryBackoff  time.Duration `mapstructure:"max_retry_backoff"`
	PoolSize         int           `mapstructure:"pool_size"`
	MinIdleConns     int           `mapstructure:"min_idle_conns"`
	MaxConnAge       time.Duration `mapstructure:"max_conn_age"`
	ReadTimeout      time.Duration `mapstructure:"read_timeout"`
	WriteTimeout     time.Duration `mapstructure:"write_timeout"`
	PoolTimeout      time.Duration `mapstructure:"pool_timeout"`
	IdleTimeout      time.Duration `mapstructure:"idle_timeout"`
	IdleCheckFreq    time.Duration `mapstructure:"idle_check_freq"`
	ReadOnly         bool          `mapstructure:"read_only"`
}

func (*Config) InitDefaults

func (s *Config) InitDefaults()

InitDefaults initializing fill config with default values

type Driver

type Driver struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

func NewPubSubDriver

func NewPubSubDriver(log *zap.Logger, key string, cfgPlugin config.Configurer) (*Driver, error)

func (*Driver) Connections

func (p *Driver) Connections(topic string, res map[string]struct{})

func (*Driver) Next

func (p *Driver) Next(ctx context.Context) (*pubsub.Message, error)

Next message

func (*Driver) Publish

func (p *Driver) Publish(msg *pubsub.Message) error

func (*Driver) PublishAsync

func (p *Driver) PublishAsync(msg *pubsub.Message)

func (*Driver) Stop

func (p *Driver) Stop()

func (*Driver) Subscribe

func (p *Driver) Subscribe(connectionID string, topics ...string) error

func (*Driver) Unsubscribe

func (p *Driver) Unsubscribe(connectionID string, topics ...string) error

Jump to

Keyboard shortcuts

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