This commit is contained in:
zhouyuyan
2017-09-04 16:57:01 +08:00
parent 5e937601ce
commit 8af790ffba
5 changed files with 21 additions and 6 deletions

View File

@@ -15,6 +15,7 @@ const (
)
type Config struct {
Worker int `json:"workerNum"`
Host string `json:"host"`
Port string `json:"port"`
Cluster RouteInfo `json:"cluster"`
@@ -57,6 +58,12 @@ func LoadConfig() (*Config, error) {
return nil, err
}
if config.Worker == 0 {
config.Worker = 1024
}
WorkNum = config.Worker
if config.Port != "" {
if config.Host == "" {
config.Host = "0.0.0.0"

View File

@@ -1,14 +1,16 @@
package broker
const (
WorkNum = 4096
)
// const (
// WorkNum = 4096
// )
var WorkNum int
type Dispatcher struct {
WorkerPool chan chan *Message
}
func init() {
func StartDispatcher() {
InitMessagePool()
dispatcher := NewDispatcher()
dispatcher.Run()

BIN
hmq

Binary file not shown.

View File

@@ -1,4 +1,5 @@
{
"workerNum":40960,
"port": "1883",
"host": "0.0.0.0",
"cluster": {

View File

@@ -9,6 +9,10 @@ import (
log "github.com/cihub/seelog"
)
func init() {
}
func main() {
runtime.GOMAXPROCS(runtime.NumCPU())
runtime.GC()
@@ -17,13 +21,14 @@ func main() {
log.Error("Load Config file error: ", er)
return
}
broker.StartDispatcher()
broker, err := broker.NewBroker(config)
b, err := broker.NewBroker(config)
if err != nil {
log.Error("New Broker error: ", er)
return
}
broker.Start()
b.Start()
s := waitForSignal()
log.Infof("signal got: %v ,broker closed.", s)