2022-01-01 15:55:02 +08:00

40 lines
788 B
Go

package logic
import (
"Open_IM/pkg/common/config"
"Open_IM/pkg/common/log"
"Open_IM/pkg/common/mq"
"Open_IM/pkg/common/mq/kafka"
"Open_IM/pkg/common/mq/nsq"
)
var (
persistentCH PersistentConsumerHandler
historyCH HistoryConsumerHandler
producer mq.Producer
)
func Init() {
log.NewPrivateLog(config.Config.ModuleName.MsgTransferName)
persistentCH.Init()
historyCH.Init()
cfg := config.Config.MQ.Ms2pschat
switch cfg.Type {
case "kafka":
producer = kafka.NewKafkaProducer(cfg.Addr, cfg.Topic)
case "nsq":
p, err := nsq.NewNsqProducer(cfg.Addr[0], cfg.Topic)
if err != nil {
panic(err)
}
producer = p
}
}
func Run() {
//register mysqlConsumerHandler to
go persistentCH.persistentConsumerGroup.Start()
go historyCH.historyConsumerGroup.Start()
}