Redis пул соединений с лямбда - PullRequest
0 голосов
/ 09 марта 2020

Я пытаюсь использовать Redis с лямбда-функциями. Как я могу использовать пул соединений в lamdba, если он не поддерживает состояние. Это нормально, чтобы лямбда всегда создавала новые подключения к redis? Или я могу использовать пример пула соединений, который я вставил ниже? Где в моей игре Handle fun c я сделаю conn: = pool.Get (). Не уверен, какой подход я должен использовать. Любая помощь.

func Handle(ctx context.context, req events.APIGatewayWebsocketProxyRequest)(interface{},error){

  //make new redis connection


}

или

func newPool(addr string) *redis.Pool {
  return &redis.Pool{
    MaxIdle: 3,
    IdleTimeout: 240 * time.Second,
    // Dial or DialContext must be set. When both are set, DialContext takes precedence over Dial.
    Dial: func () (redis.Conn, error) { return redis.Dial("tcp", addr) },
  }
}

var (
  pool *redis.Pool
  redisServer = flag.String("redisServer", ":6379", "")
)

func main() {
  flag.Parse()
  pool = newPool(*redisServer)
  ...
}
...