forked from mygomod/muses
-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.go
executable file
·110 lines (105 loc) · 2.12 KB
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
package main
import (
"github.com/jinzhu/gorm"
"github.com/pinke/muses"
"github.com/pinke/muses/pkg/app"
"github.com/pinke/muses/pkg/cache/redis"
"github.com/pinke/muses/pkg/database/mongo"
"github.com/pinke/muses/pkg/database/mysql"
"github.com/pinke/muses/pkg/logger"
"github.com/pinke/muses/pkg/server/gin"
"github.com/pinke/muses/pkg/server/stat"
"github.com/pinke/muses/pkg/session/ginsession"
)
var cfg = `
[muses.app]
name = "muses"
env = "dev"
version = "1.0"
[muses.logger.system]
debug = true
level = "debug"
path = "./system.log"
[muses.mysql.default]
debug = true
level = "panic"
network = "tcp"
dialect = "mysql"
addr = "127.0.0.1:3306"
username = "root"
password = "root"
db = "shop"
charset = "utf8"
parseTime = "True"
loc = "Local"
timeout = "1s"
readTimeout = "1s"
writeTimeout = "1s"
maxOpenConns = 30
maxIdleConns = 10
connMaxLifetime = "300s"
[muses.mongo.default]
debug = true
url = "mongodb://127.0.0.1:27017/admin"
[muses.redis.default]
debug = true
addr = "127.0.0.1:6379"
network = "tcp"
db = 0
password = ""
connectTimeout = "1s"
readTimeout = "1s"
writeTimeout = "1s"
maxIdle = 5
maxActive = 20
idleTimeout = "60s"
wait = false
[muses.server.stat]
addr = ":8100"
writeTimeout = "1s"
readTimeout = "1s"
[muses.server.gin]
graceful = true
mod = "debug"
addr = ":10004"
writeTimeout = "10s"
readTimeout = "10s"
maxHeaderBytes = 100000000000000
enabledRecovery = true
enabledLogger = true
enabledMetric = true
[muses.session.gin]
name = "mysession"
size = 10
network = "tcp"
addr = "127.0.0.1:6379"
pwd = ""
keypairs = "secret"
`
var (
Db *gorm.DB
)
func main() {
app := muses.Container(
app.Register,
mysql.Register,
mongo.Register,
redis.Register,
ginsession.Register,
logger.Register,
stat.Register,
gin.Register,
);
app.SetCfg([]byte(cfg))
initCaller()
type User struct {
Uid int
Name string
}
u := User{}
Db.Table("user").Where("uid=?", 1).Find(&u)
select {}
}
func initCaller() {
Db = mysql.Caller("default")
}