diff --git a/lego/sys/mgo/mgo.go b/lego/sys/mgo/mgo.go index 6fb81cdf9..f35e2fa7d 100644 --- a/lego/sys/mgo/mgo.go +++ b/lego/sys/mgo/mgo.go @@ -3,7 +3,6 @@ package mgo import ( "context" "fmt" - "time" "go_dreamfactory/lego/core" @@ -12,7 +11,6 @@ import ( "go.mongodb.org/mongo-driver/mongo/options" "go.mongodb.org/mongo-driver/mongo/readconcern" "go.mongodb.org/mongo-driver/mongo/readpref" - "go.mongodb.org/mongo-driver/mongo/writeconcern" ) func newSys(options Options) (sys *Mongodb, err error) { @@ -28,20 +26,20 @@ type Mongodb struct { } func (this *Mongodb) init() (err error) { - want, err := readpref.New(readpref.SecondaryMode) //表示只使用辅助节点 - if err != nil { - return fmt.Errorf("数据库设置辅助节点 err=%s", err.Error()) - } - wc := writeconcern.New(writeconcern.WMajority()) + // want, err := readpref.New(readpref.SecondaryMode) //表示只使用辅助节点 + // if err != nil { + // return fmt.Errorf("数据库设置辅助节点 err=%s", err.Error()) + // } + // wc := writeconcern.New(writeconcern.W(1)) readconcern.Majority() //链接mongo服务 opt := options.Client().ApplyURI(this.options.MongodbUrl) - opt.SetLocalThreshold(3 * time.Second) //只使用与mongo操作耗时小于3秒的 - opt.SetMaxConnIdleTime(5 * time.Second) //指定连接可以保持空闲的最大毫秒数 + // opt.SetLocalThreshold(3 * time.Second) //只使用与mongo操作耗时小于3秒的 + // opt.SetMaxConnIdleTime(5 * time.Second) //指定连接可以保持空闲的最大毫秒数 opt.SetMaxPoolSize(this.options.MaxPoolSize) //使用最大的连接数 - opt.SetReadPreference(want) //表示只使用辅助节点 - opt.SetReadConcern(readconcern.Majority()) //指定查询应返回实例的最新数据确认为,已写入副本集中的大多数成员 - opt.SetWriteConcern(wc) //请求确认写操作传播到大多数mongod实例 + // opt.SetReadPreference(want) //表示只使用辅助节点 + // opt.SetReadConcern(readconcern.Majority()) //指定查询应返回实例的最新数据确认为,已写入副本集中的大多数成员 + // opt.SetWriteConcern(wc) //请求确认写操作传播到大多数mongod实例 if client, err := mongo.Connect(this.getContext(), opt); err != nil { return fmt.Errorf("连接数据库错误 err=%s", err.Error()) } else { diff --git a/lego/sys/mgo/options.go b/lego/sys/mgo/options.go index 18c1b95ae..0abb5c603 100644 --- a/lego/sys/mgo/options.go +++ b/lego/sys/mgo/options.go @@ -40,7 +40,7 @@ func SetTimeOut(v time.Duration) Option { func newOptions(config map[string]interface{}, opts ...Option) Options { options := Options{ - MaxPoolSize: 1000, + MaxPoolSize: 100, TimeOut: time.Second * 3, } if config != nil { @@ -54,7 +54,7 @@ func newOptions(config map[string]interface{}, opts ...Option) Options { func newOptionsByOption(opts ...Option) Options { options := Options{ - MaxPoolSize: 1000, + MaxPoolSize: 100, TimeOut: time.Second * 3, } for _, o := range opts {