新增:支持配置文件设置服务参数
git-svn-id: svn://47.119.165.148/zhub@73 e63fbceb-bcc3-4977-ac22-735b83d8d0f4
This commit is contained in:
@@ -7,6 +7,7 @@ import (
|
||||
"strings"
|
||||
"sync"
|
||||
"time"
|
||||
"zhub/conf"
|
||||
)
|
||||
|
||||
func msgAccept(v Message) {
|
||||
@@ -22,7 +23,9 @@ func msgAccept(v Message) {
|
||||
return
|
||||
}
|
||||
|
||||
log.Println("rcmd: " + strings.Join(rcmd, " "))
|
||||
if conf.LogDebug {
|
||||
log.Println("rcmd: " + strings.Join(rcmd, " "))
|
||||
}
|
||||
|
||||
if len(rcmd) == 1 {
|
||||
switch strings.ToLower(rcmd[0]) {
|
||||
@@ -84,14 +87,14 @@ func msgAccept(v Message) {
|
||||
}
|
||||
}
|
||||
|
||||
// daly topic 100
|
||||
// daly topic value 100 -> publish topic value
|
||||
func daly(rcmd []string, c *ZConn) {
|
||||
if len(rcmd) != 3 {
|
||||
if len(rcmd) != 4 {
|
||||
send(c.conn, "-Error: subscribe para number!")
|
||||
return
|
||||
}
|
||||
|
||||
t, err := strconv.ParseInt(rcmd[2], 10, 64)
|
||||
t, err := strconv.ParseInt(rcmd[3], 10, 64)
|
||||
if err != nil {
|
||||
send(c.conn, "-Error: "+strings.Join(rcmd, " "))
|
||||
return
|
||||
@@ -100,8 +103,7 @@ func daly(rcmd []string, c *ZConn) {
|
||||
timer := time.NewTimer(time.Duration(t) * time.Millisecond)
|
||||
select {
|
||||
case <-timer.C:
|
||||
send(c.conn, "daly", rcmd[1])
|
||||
// zsub.publish(rcmd[1], rcmd[2])
|
||||
zsub.publish(rcmd[1], rcmd[2])
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
21
zsub/zsub.go
21
zsub/zsub.go
@@ -2,7 +2,6 @@ package zsub
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"log"
|
||||
"net"
|
||||
"strconv"
|
||||
@@ -17,10 +16,6 @@ var (
|
||||
}
|
||||
)
|
||||
|
||||
func init() {
|
||||
zsub.reloadTimerConfig()
|
||||
}
|
||||
|
||||
type ZSub struct {
|
||||
sync.Mutex
|
||||
topics map[string]*ZTopic
|
||||
@@ -150,13 +145,21 @@ func (c *ZConn) appendTo(arr []*ZConn) []*ZConn {
|
||||
}
|
||||
|
||||
// ================== ZHub server =====================================
|
||||
func ServerStart(host string, port int) {
|
||||
listen, err := net.Listen("tcp", fmt.Sprintf("%s:%d", host, port))
|
||||
/*
|
||||
1、初始化服务
|
||||
2、启动服务监听
|
||||
*/
|
||||
func ServerStart(addr string) {
|
||||
|
||||
// 加载定时调度服务
|
||||
zsub.reloadTimerConfig()
|
||||
|
||||
// 启动服务监听
|
||||
listen, err := net.Listen("tcp", addr)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
return
|
||||
}
|
||||
log.Printf("zhub started listen on: %s:%d \n", host, port)
|
||||
log.Printf("zhub started listen on: %s \n", addr)
|
||||
|
||||
// 启动消息监听处理
|
||||
go func() {
|
||||
|
||||
@@ -13,6 +13,7 @@ import (
|
||||
"strings"
|
||||
"text/template"
|
||||
"time"
|
||||
"zhub/conf"
|
||||
)
|
||||
|
||||
type ZTimer struct {
|
||||
@@ -165,9 +166,13 @@ func executeShell(command string) (string, error, string) {
|
||||
}
|
||||
|
||||
func (s *ZSub) reloadTimerConfig() {
|
||||
db, err := sql.Open("mysql", "root:*Zhong123098!@tcp(47.111.150.118:6063)/platf_oth?charset=utf8") // dev
|
||||
//db, err := sql.Open("mysql", "root:*Zhong123098!@tcp(121.196.17.55:6063)/platf_oth?charset=utf8") // qc
|
||||
//db, err := sql.Open("mysql", "root:*Hello@27.com!@tcp(122.112.180.156:6033)/platf_oth?charset=utf8") // pro
|
||||
db, err := sql.Open("mysql", fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8",
|
||||
conf.GetStr("ztimer.db.user", "root"),
|
||||
conf.GetStr("ztimer.db.pwd", "123456"),
|
||||
conf.GetStr("ztimer.db.addr", "127.0.0.1:3306"),
|
||||
conf.GetStr("ztimer.db.database", "zhub"),
|
||||
))
|
||||
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
return
|
||||
@@ -177,6 +182,7 @@ func (s *ZSub) reloadTimerConfig() {
|
||||
rows, err := db.Query("SELECT t.`name`,t.`expr`,IF(t.`single`=1,'a','x') 'single' FROM tasktimer t WHERE t.`status`=10 ORDER BY t.`timerid`")
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
return
|
||||
}
|
||||
|
||||
for rows.Next() {
|
||||
|
||||
Reference in New Issue
Block a user