第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Redis 在 docker 容器中失去連接

Redis 在 docker 容器中失去連接

Go
DIEA 2023-05-08 17:41:35
我正在使用 redigo 創(chuàng)建 PubSub,并且連接是由 redis 池創(chuàng)建的。這是 Redis 池代碼:package mainimport (    "os"    "os/signal"    "syscall"    "time"    "github.com/gomodule/redigo/redis")type IRedis interface {    Addr() string    Conn() redis.Conn    Set(key string, body string) error    Close()}type Redis struct {    addr string    pool *redis.Pool}func NewRedis(addr string) *Redis {    r := &Redis{        addr,        &redis.Pool{            MaxIdle:     50000,            IdleTimeout: 240 * time.Second,            Dial: func() (redis.Conn, error) {                c, err := redis.Dial("tcp", addr)                if err != nil {                    return nil, err                }                return c, err            },            TestOnBorrow: func(c redis.Conn, t time.Time) error {                _, err := c.Do("PING")                return err            },        },    }    r.cleanupHook()    return r}func (r *Redis) cleanupHook() {    c := make(chan os.Signal, 1)    signal.Notify(c, os.Interrupt)    signal.Notify(c, syscall.SIGTERM)    signal.Notify(c, syscall.SIGKILL)    go func() {        <-c        r.pool.Close()        os.Exit(0)    }()}func (r *Redis) Addr() string {    return r.addr}func (r *Redis) Conn() redis.Conn {    return r.pool.Get()}func (r *Redis) Set(key string, body string) error {    p := r.pool.Get()    defer p.Close()    _, err := p.Do("SET", key, body)    return err}func (r *Redis) Close() {    r.pool.Close()}
查看完整描述

1 回答

?
慕尼黑8549860

TA貢獻1818條經(jīng)驗 獲得超11個贊

問題出在 redis conf 中名為 client-output-buffer-limit pubsub 的參數(shù),默認值為 32mb 8mb 60,當達到限制時,redis 會關閉與 pubsub 的連接。為了解決它,我增加了價值。



查看完整回答
反對 回復 2023-05-08
  • 1 回答
  • 0 關注
  • 174 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號