62 lines
1.3 KiB
Go
62 lines
1.3 KiB
Go
package main
|
||
|
||
import (
|
||
"flag"
|
||
"fmt"
|
||
"go_dreamfactory/modules/web"
|
||
"go_dreamfactory/services"
|
||
"go_dreamfactory/sys/cache"
|
||
"go_dreamfactory/sys/db"
|
||
|
||
"go_dreamfactory/lego"
|
||
"go_dreamfactory/lego/base/rpcx"
|
||
"go_dreamfactory/lego/core"
|
||
"go_dreamfactory/lego/sys/log"
|
||
)
|
||
|
||
/*
|
||
服务类型:web
|
||
服务描述:提供一些http服务,方便后期维护和开发过程中的测试,只包含 web 业务模块
|
||
*/
|
||
var (
|
||
conf = flag.String("conf", "./conf/web_1.yaml", "获取需要启动的服务配置文件") //启动服务的Id
|
||
)
|
||
|
||
func main() {
|
||
flag.Parse()
|
||
s := NewService(
|
||
rpcx.SetConfPath(*conf),
|
||
rpcx.SetVersion("1.0.0.0"),
|
||
)
|
||
s.OnInstallComp( //装备组件
|
||
)
|
||
lego.Run(s, //运行模块
|
||
web.NewModule(),
|
||
)
|
||
|
||
}
|
||
|
||
func NewService(ops ...rpcx.Option) core.IService {
|
||
s := new(Service)
|
||
s.Configure(ops...)
|
||
return s
|
||
}
|
||
|
||
type Service struct {
|
||
services.ServiceBase
|
||
}
|
||
|
||
func (this *Service) InitSys() {
|
||
this.ServiceBase.InitSys()
|
||
if err := cache.OnInit(this.GetSettings().Sys["cache"]); err != nil {
|
||
panic(fmt.Sprintf("init sys.cache err: %s", err.Error()))
|
||
} else {
|
||
log.Infof("init sys.cache success!")
|
||
}
|
||
if err := db.OnInit(this.GetSettings().Sys["db"]); err != nil {
|
||
panic(fmt.Sprintf("init sys.db err: %s", err.Error()))
|
||
} else {
|
||
log.Infof("init sys.db success!")
|
||
}
|
||
}
|