mirror of
https://github.com/fhmq/hmq.git
synced 2026-04-24 10:38:34 +00:00
broker
This commit is contained in:
@@ -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"
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"workerNum":40960,
|
||||
"port": "1883",
|
||||
"host": "0.0.0.0",
|
||||
"cluster": {
|
||||
|
||||
9
main.go
9
main.go
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user