1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- package main
- import (
- "os"
- "os/signal"
- "syscall"
- "trial/grpc-odbserver/mnode"
- "trial/grpc-odbserver/msn"
- "git.wecise.com/wecise/common/matrix/logger"
- "git.wecise.com/wecise/common/matrix/util"
- z "git.wecise.com/wecise/odbserver/mring/z/m"
- )
- var _ = z.RunShadowCount(5, 0, 0, -1)
- var log = logger.New()
- var node = &mnode.MNode{}
- var svcmsn = &msn.MessengerService{}
- func start() {
- node.Init()
- node.RegisterService(svcmsn)
- node.Start()
- }
- func run() {
- msgr := msn.GetMessenger()
- msgr.Subscribe()
- msgr.Publish()
- }
- func stop() {
- node.Stop()
- node.Destroy()
- }
- func main() {
- defer func() {
- e := util.ErrorWithSourceLine(recover())
- if e != nil {
- log.Error(e)
- }
- }()
- exitChan := make(chan os.Signal)
- signal.Notify(exitChan, os.Interrupt, os.Kill, syscall.SIGHUP, syscall.SIGQUIT, syscall.SIGABRT, syscall.SIGTERM)
- start()
- log.Print(node.Name(), "启动")
- //
- go run()
- //
- s := <-exitChan
- if log != nil {
- log.Print("收到退出信号", s)
- }
- stop()
- log.Print(node.Name(), "停止")
- }
|