我目前从MongoDBon开始GoLang。我目前的用例是这样的。
我希望MongoDB Database在特定包中初始化与 my 的连接,并client在其他几个本地包中使用返回的连接。这是我尝试过的,
我已经将连接初始化到MongoDB一个名为dataLayer如下的包内
package dataLayer
import (
"context"
"log"
"time"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
"go.mongodb.org/mongo-driver/mongo/readpref"
)
func InitDataLayer() {
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
client, err := mongo.Connect(ctx, options.Client().ApplyURI(credentials.MONGO_DB_ATLAS_URI))
if err != nil {
log.Fatal(err)
} else {
log.Println("Connected to Database")
}
}
现在,如果我希望client在其他包中使用返回的内容,继续initDataLayer一遍又一遍地调用以取回 a是否生产安全client?
慕哥6287543
相关分类