101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
1
2
3
|
package common
import (
|
f415f471
zhangqijia
fix: roleID自增加上限制...
|
4
|
"errors"
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
5
6
7
8
9
10
|
"fmt"
"github.com/garyburd/redigo/redis"
"pro2d/common/db/redisproxy"
)
func GetNextRoleId() (string, error) {
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
11
|
relay, err := redisproxy.HGET(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "role")
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
12
13
14
|
if err != nil {
return "", err
}
|
f415f471
zhangqijia
fix: roleID自增加上限制...
|
15
16
17
18
19
20
21
22
23
|
ID, err := redis.Int64(relay, err)
if err != nil {
return "", err
}
//roleID的范围 [GlobalSconf.ID*MaxRoleNum, GlobalSconf.ID*MaxRoleNum + MaxRoleNum]
if ID-GlobalSconf.ID*MaxRoleNum >= MaxCommNum-1 {
return "", errors.New("DB_FULL")
}
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
24
|
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
25
|
relay, err = redisproxy.HINCRBY(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "role", 1)
|
f415f471
zhangqijia
fix: roleID自增加上限制...
|
26
|
ID, err = redis.Int64(relay, err)
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
27
28
29
30
31
32
33
|
if err != nil {
return "", err
}
return fmt.Sprintf("%d", ID), nil
}
func GetNextUId() (string, error) {
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
34
|
relay, err := redisproxy.HGET(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "uid")
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
35
36
37
38
39
40
41
|
if err != nil {
return "", err
}
var ID int64 = 0
if relay == nil {
ID = 90000
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
42
|
redisproxy.HSET(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "uid", ID)
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
43
|
} else {
|
a24dea4c
zhangqijia
fix: id自增做了写更新。阵容...
|
44
|
relay, err = redisproxy.HINCRBY(fmt.Sprintf(AutoIncrement, GlobalSconf.ID), "uid", 1)
|
101d1cc1
zhangqijia
feat: 一个基于redis的自...
|
45
46
47
48
49
50
51
|
ID, err = redis.Int64(relay, err)
if err != nil {
return "", err
}
}
return fmt.Sprintf("%d", ID), nil
}
|