46 lines
1.3 KiB
Go
46 lines
1.3 KiB
Go
|
package dao
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
|
||
|
daoAnchorV1 "go-common/app/service/live/dao-anchor/api/grpc/v1"
|
||
|
"go-common/library/log"
|
||
|
)
|
||
|
|
||
|
func (d *Dao) SetRecPoolCache(ctx context.Context, key string, list string, expire int) (err error) {
|
||
|
log.Info("[SetRecPoolCache]key: %s", key)
|
||
|
rconn := d.redis.Get(ctx)
|
||
|
defer rconn.Close()
|
||
|
if _, err = rconn.Do("SET", key, list, "EX", expire); err != nil {
|
||
|
log.Error("[SetRecPoolCache]redis.Set error(%v)", err)
|
||
|
}
|
||
|
return
|
||
|
}
|
||
|
|
||
|
func (d *Dao) SetRecInfoCache(ctx context.Context, list map[int64]*daoAnchorV1.RoomData) (err error) {
|
||
|
rconn := d.redis.Get(ctx)
|
||
|
defer rconn.Close()
|
||
|
//rconn.Send("MULTI")
|
||
|
for roomId, roomData := range list {
|
||
|
if roomData == nil {
|
||
|
continue
|
||
|
}
|
||
|
key, expire := d.getRecInfoKey(roomId)
|
||
|
rconn.Send("HMSET", key, "room_id", roomData.RoomId, "uid", roomData.Uid, "title", roomData.Title, "popularity_count", roomData.PopularityCount, "Keyframe", roomData.Keyframe, "cover", roomData.Cover, "parent_area_id", roomData.ParentAreaId, "parent_area_name", roomData.ParentAreaName, "area_id", roomData.AreaId, "area_name", roomData.AreaName)
|
||
|
rconn.Send("EXPIRE", key, expire)
|
||
|
}
|
||
|
if err = rconn.Flush(); err != nil {
|
||
|
log.Error("[SetRecInfoCache]redis.Set error(%v)", err)
|
||
|
}
|
||
|
|
||
|
for _, roomData := range list {
|
||
|
if roomData == nil {
|
||
|
continue
|
||
|
}
|
||
|
rconn.Receive()
|
||
|
rconn.Receive()
|
||
|
}
|
||
|
|
||
|
return
|
||
|
}
|