优化
This commit is contained in:
parent
b558768c0e
commit
b101d46b82
@ -16,6 +16,7 @@ type (
|
|||||||
ListCollectionNames(filter interface{}, opts ...*options.ListCollectionsOptions) ([]string, error)
|
ListCollectionNames(filter interface{}, opts ...*options.ListCollectionsOptions) ([]string, error)
|
||||||
Collection(sqltable core.SqlTable) *mongo.Collection
|
Collection(sqltable core.SqlTable) *mongo.Collection
|
||||||
CreateIndex(sqltable core.SqlTable, model mongo.IndexModel, opts ...*options.CreateIndexesOptions) (string, error)
|
CreateIndex(sqltable core.SqlTable, model mongo.IndexModel, opts ...*options.CreateIndexesOptions) (string, error)
|
||||||
|
CreateMany(sqltable core.SqlTable, model []mongo.IndexModel, opts ...*options.CreateIndexesOptions) ([]string, error)
|
||||||
DeleteIndex(sqltable core.SqlTable, name string, opts ...*options.DropIndexesOptions) (bson.Raw, error)
|
DeleteIndex(sqltable core.SqlTable, name string, opts ...*options.DropIndexesOptions) (bson.Raw, error)
|
||||||
UseSession(fn func(sessionContext mongo.SessionContext) error) error
|
UseSession(fn func(sessionContext mongo.SessionContext) error) error
|
||||||
CountDocuments(sqltable core.SqlTable, filter interface{}, opts ...*options.CountOptions) (int64, error)
|
CountDocuments(sqltable core.SqlTable, filter interface{}, opts ...*options.CountOptions) (int64, error)
|
||||||
@ -73,6 +74,10 @@ func Collection(sqltable core.SqlTable) *mongo.Collection {
|
|||||||
func CreateIndex(sqltable core.SqlTable, model mongo.IndexModel, opts ...*options.CreateIndexesOptions) (string, error) {
|
func CreateIndex(sqltable core.SqlTable, model mongo.IndexModel, opts ...*options.CreateIndexesOptions) (string, error) {
|
||||||
return defsys.CreateIndex(sqltable, model, opts...)
|
return defsys.CreateIndex(sqltable, model, opts...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func CreateMany(sqltable core.SqlTable, model []mongo.IndexModel, opts ...*options.CreateIndexesOptions) ([]string, error) {
|
||||||
|
return defsys.CreateMany(sqltable, model, opts...)
|
||||||
|
}
|
||||||
func DeleteIndex(sqltable core.SqlTable, name string, opts ...*options.DropIndexesOptions) (bson.Raw, error) {
|
func DeleteIndex(sqltable core.SqlTable, name string, opts ...*options.DropIndexesOptions) (bson.Raw, error) {
|
||||||
return defsys.DeleteIndex(sqltable, name, opts...)
|
return defsys.DeleteIndex(sqltable, name, opts...)
|
||||||
}
|
}
|
||||||
|
@ -72,7 +72,9 @@ func (this *Mongodb) getContext() (ctx context.Context) {
|
|||||||
func (this *Mongodb) CreateIndex(sqltable core.SqlTable, model mongo.IndexModel, opts ...*options.CreateIndexesOptions) (string, error) {
|
func (this *Mongodb) CreateIndex(sqltable core.SqlTable, model mongo.IndexModel, opts ...*options.CreateIndexesOptions) (string, error) {
|
||||||
return this.Collection(sqltable).Indexes().CreateOne(this.getContext(), model, opts...)
|
return this.Collection(sqltable).Indexes().CreateOne(this.getContext(), model, opts...)
|
||||||
}
|
}
|
||||||
|
func (this *Mongodb) CreateMany(sqltable core.SqlTable, model []mongo.IndexModel, opts ...*options.CreateIndexesOptions) ([]string, error) {
|
||||||
|
return this.Collection(sqltable).Indexes().CreateMany(this.getContext(), model, opts...)
|
||||||
|
}
|
||||||
func (this *Mongodb) DeleteIndex(sqltable core.SqlTable, name string, opts ...*options.DropIndexesOptions) (bson.Raw, error) {
|
func (this *Mongodb) DeleteIndex(sqltable core.SqlTable, name string, opts ...*options.DropIndexesOptions) (bson.Raw, error) {
|
||||||
return this.Collection(sqltable).Indexes().DropOne(this.getContext(), name, opts...)
|
return this.Collection(sqltable).Indexes().DropOne(this.getContext(), name, opts...)
|
||||||
}
|
}
|
||||||
|
@ -10,6 +10,7 @@ import (
|
|||||||
"go.mongodb.org/mongo-driver/bson"
|
"go.mongodb.org/mongo-driver/bson"
|
||||||
"go.mongodb.org/mongo-driver/mongo"
|
"go.mongodb.org/mongo-driver/mongo"
|
||||||
"go.mongodb.org/mongo-driver/mongo/options"
|
"go.mongodb.org/mongo-driver/mongo/options"
|
||||||
|
mgooptions "go.mongodb.org/mongo-driver/mongo/options"
|
||||||
"go.mongodb.org/mongo-driver/x/bsonx"
|
"go.mongodb.org/mongo-driver/x/bsonx"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -23,16 +24,20 @@ func (this *modelRecode) Init(service core.IService, module core.IModule, comp c
|
|||||||
this.TableName = comm.TableEntertainRecode
|
this.TableName = comm.TableEntertainRecode
|
||||||
this.MCompModel.Init(service, module, comp, opt)
|
this.MCompModel.Init(service, module, comp, opt)
|
||||||
this.module = module.(*Entertainment)
|
this.module = module.(*Entertainment)
|
||||||
|
|
||||||
// 通过uid创建索引
|
// 通过uid创建索引
|
||||||
this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{
|
if _, err = this.DB.CreateMany(core.SqlTable(this.TableName), []mongo.IndexModel{
|
||||||
Keys: bsonx.Doc{{Key: "p1", Value: bsonx.Int32(1)}},
|
{
|
||||||
})
|
Keys: bsonx.Doc{{Key: "p1", Value: bsonx.Int32(1)},
|
||||||
this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{
|
{Key: "p2", Value: bsonx.Int32(1)}},
|
||||||
Keys: bsonx.Doc{{Key: "p2", Value: bsonx.Int32(1)}},
|
}, {
|
||||||
})
|
Keys: bson.M{"createtime": -1},
|
||||||
this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{
|
Options: mgooptions.Index().SetExpireAfterSeconds(7 * 24 * 3600),
|
||||||
Keys: bsonx.Doc{{Key: "ctime", Value: bsonx.Int32(1)}},
|
},
|
||||||
})
|
}); err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -629,7 +629,7 @@ func (this *Room) GameOver(winner *pb.PlayerData) (errdata *pb.ErrorData) {
|
|||||||
Win: winner.Userinfo.Uid,
|
Win: winner.Userinfo.Uid,
|
||||||
Winscore: winScore,
|
Winscore: winScore,
|
||||||
Lostscore: lostScore,
|
Lostscore: lostScore,
|
||||||
Ctime: configure.Now().Unix(),
|
Createtime: configure.Now().Unix(),
|
||||||
}
|
}
|
||||||
|
|
||||||
this.module.modelRecode.updateXxlRecord(recode1)
|
this.module.modelRecode.updateXxlRecord(recode1)
|
||||||
|
@ -42,7 +42,6 @@ func (this *modelUserLog) Init(service core.IService, module core.IModule, comp
|
|||||||
// 用户操作明细数据记录
|
// 用户操作明细数据记录
|
||||||
func (this *modelUserLog) AddUserLog(uid string, req interface{}, itype int32, tag string, data interface{}) {
|
func (this *modelUserLog) AddUserLog(uid string, req interface{}, itype int32, tag string, data interface{}) {
|
||||||
var (
|
var (
|
||||||
dbModel *db.DBModel
|
|
||||||
err error
|
err error
|
||||||
jsonStr []byte
|
jsonStr []byte
|
||||||
logType string
|
logType string
|
||||||
@ -77,8 +76,7 @@ func (this *modelUserLog) AddUserLog(uid string, req interface{}, itype int32, t
|
|||||||
if db.IsCross() { //如果是跨服 直接找到对应的本服
|
if db.IsCross() { //如果是跨服 直接找到对应的本服
|
||||||
if tag, _, b := utils.UIdSplit(uid); b {
|
if tag, _, b := utils.UIdSplit(uid); b {
|
||||||
if conn, err := db.ServerDBConn(tag); err == nil {
|
if conn, err := db.ServerDBConn(tag); err == nil {
|
||||||
dbModel = db.NewDBModel(comm.TableEntertainm, conn)
|
if _, err = conn.Mgo.InsertOne(core.SqlTable(this.TableName), &pb.DBUserLog{
|
||||||
if _, err = dbModel.DB.InsertOne(core.SqlTable(this.TableName), &pb.DBUserLog{
|
|
||||||
Id: primitive.NewObjectID().Hex(),
|
Id: primitive.NewObjectID().Hex(),
|
||||||
Uid: uid,
|
Uid: uid,
|
||||||
ExpireAt: time.Now().Add(time.Hour * 24 * 8).Unix(),
|
ExpireAt: time.Now().Add(time.Hour * 24 * 8).Unix(),
|
||||||
|
@ -778,7 +778,7 @@ type DBXxlRecord struct {
|
|||||||
Win string `protobuf:"bytes,8,opt,name=win,proto3" json:"win"` // uid 胜利
|
Win string `protobuf:"bytes,8,opt,name=win,proto3" json:"win"` // uid 胜利
|
||||||
Winscore int32 `protobuf:"varint,9,opt,name=winscore,proto3" json:"winscore"`
|
Winscore int32 `protobuf:"varint,9,opt,name=winscore,proto3" json:"winscore"`
|
||||||
Lostscore int32 `protobuf:"varint,10,opt,name=lostscore,proto3" json:"lostscore"`
|
Lostscore int32 `protobuf:"varint,10,opt,name=lostscore,proto3" json:"lostscore"`
|
||||||
Ctime int64 `protobuf:"varint,11,opt,name=ctime,proto3" json:"ctime"` // 创建时间
|
Createtime int64 `protobuf:"varint,11,opt,name=createtime,proto3" json:"createtime" bson:"createtime"` //
|
||||||
}
|
}
|
||||||
|
|
||||||
func (x *DBXxlRecord) Reset() {
|
func (x *DBXxlRecord) Reset() {
|
||||||
@ -883,9 +883,9 @@ func (x *DBXxlRecord) GetLostscore() int32 {
|
|||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
func (x *DBXxlRecord) GetCtime() int64 {
|
func (x *DBXxlRecord) GetCreatetime() int64 {
|
||||||
if x != nil {
|
if x != nil {
|
||||||
return x.Ctime
|
return x.Createtime
|
||||||
}
|
}
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
@ -1027,7 +1027,7 @@ var file_entertain_entertain_db_proto_rawDesc = []byte{
|
|||||||
0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, 0x70, 0x18, 0x04,
|
0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, 0x70, 0x18, 0x04,
|
||||||
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, 0x70,
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x65, 0x78, 0x70,
|
||||||
0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x73, 0x6f, 0x63, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01,
|
0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x73, 0x6f, 0x63, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01,
|
||||||
0x28, 0x05, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x73, 0x6f, 0x63, 0x72, 0x65, 0x22, 0xa1, 0x02, 0x0a,
|
0x28, 0x05, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x73, 0x6f, 0x63, 0x72, 0x65, 0x22, 0xab, 0x02, 0x0a,
|
||||||
0x0b, 0x44, 0x42, 0x58, 0x78, 0x6c, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02,
|
0x0b, 0x44, 0x42, 0x58, 0x78, 0x6c, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02,
|
||||||
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02,
|
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02,
|
||||||
0x70, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x70, 0x31, 0x12, 0x0e, 0x0a, 0x02,
|
0x70, 0x31, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x70, 0x31, 0x12, 0x0e, 0x0a, 0x02,
|
||||||
@ -1044,9 +1044,10 @@ var file_entertain_entertain_db_proto_rawDesc = []byte{
|
|||||||
0x12, 0x1a, 0x0a, 0x08, 0x77, 0x69, 0x6e, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01,
|
0x12, 0x1a, 0x0a, 0x08, 0x77, 0x69, 0x6e, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01,
|
||||||
0x28, 0x05, 0x52, 0x08, 0x77, 0x69, 0x6e, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09,
|
0x28, 0x05, 0x52, 0x08, 0x77, 0x69, 0x6e, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x09,
|
||||||
0x6c, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52,
|
0x6c, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52,
|
||||||
0x09, 0x6c, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x74,
|
0x09, 0x6c, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72,
|
||||||
0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x74, 0x69, 0x6d, 0x65,
|
0x65, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a,
|
||||||
0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b,
|
||||||
|
0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
Loading…
Reference in New Issue
Block a user