38 lines
638 B
Go
38 lines
638 B
Go
package redis
|
|
|
|
import (
|
|
"context"
|
|
"github.com/redis/rueidis"
|
|
"os"
|
|
)
|
|
|
|
var Client *rueidis.Client
|
|
|
|
func InitClient(ctx context.Context) error {
|
|
var err error
|
|
host := os.Getenv("REDIS_HOST")
|
|
//host := "redis"
|
|
port := os.Getenv("REDIS_PORT")
|
|
password := os.Getenv("REDIS_PASSWORD")
|
|
|
|
client, err := rueidis.NewClient(rueidis.ClientOption{
|
|
InitAddress: []string{host + ":" + port},
|
|
Password: password,
|
|
})
|
|
if err != nil {
|
|
return err
|
|
}
|
|
err = client.Do(ctx, client.B().Ping().Build()).Error()
|
|
if err != nil {
|
|
return err
|
|
}
|
|
Client = &client
|
|
return nil
|
|
}
|
|
|
|
func CloseClient() {
|
|
if Client != nil {
|
|
(*Client).Close()
|
|
}
|
|
}
|