|
|
@@ -100,10 +100,12 @@ func MqStart() {
|
|
|
msgContent: msg,
|
|
|
}
|
|
|
|
|
|
- // 遍历所有订阅的主题,启动接收协程
|
|
|
- for _, subinfo := range SubInfos {
|
|
|
- Receive(subinfo.Topic, subinfo.QueueName, t)
|
|
|
- }
|
|
|
+ go func() {
|
|
|
+ // 遍历所有订阅的主题,启动接收协程
|
|
|
+ for _, subinfo := range SubInfos {
|
|
|
+ Receive(subinfo.Topic, subinfo.QueueName, t)
|
|
|
+ }
|
|
|
+ }()
|
|
|
}
|
|
|
|
|
|
// SubscribeTopic 订阅主题
|
|
|
@@ -149,7 +151,15 @@ func SubscribeTopic(topic string) error {
|
|
|
|
|
|
// Publish 发送消息
|
|
|
func Publish(topic, msg string) error {
|
|
|
- err := MqChannel.Publish("entry", topic, false, false, amqp.Publishing{
|
|
|
+ var err error
|
|
|
+ if MqChannel == nil || MqConn.IsClosed() {
|
|
|
+ err = MqConnect()
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ err = MqChannel.Publish("entry", topic, false, false, amqp.Publishing{
|
|
|
ContentType: "text/plain",
|
|
|
Body: []byte(msg),
|
|
|
})
|