Golang RabbitMQ 批量发送消息教程
下面是使用 Go 语言和 RabbitMQ 批量发送消息的示例代码:
package main
import (
"fmt"
"github.com/streadway/amqp"
)
func main() {
connection, err := amqp.Dial("amqp://guest:guest@localhost:5672/")
if err != nil {
panic(err)
}
defer connection.Close()
channel, err := connection.Channel()
if err != nil {
panic(err)
}
defer channel.Close()
queueName := "my_queue"
messages := []string{'message1', 'message2', 'message3'}
for _, message := range messages {
err = channel.Publish(
"", // exchange
queueName, // routing key
false, // mandatory
false, // immediate
amqp.Publishing{
ContentType: "text/plain",
Body: []byte(message),
})
if err != nil {
panic(err)
}
fmt.Printf("Sent message: %s\n", message)
}
}
在上面的代码中,我们首先连接到 RabbitMQ 服务器,然后创建一个通道。然后,我们指定要发送消息的队列名称和要发送的消息列表。然后,我们使用循环将每个消息发送到队列中。最后,我们输出每个发送的消息。
注意,我们在每个消息中都使用了相同的队列名称。这意味着所有这些消息都将进入同一个队列。如果您希望将消息发送到不同的队列,请在循环中更改队列名称。
还要注意的是,在循环中发送每个消息时,我们检查了错误并使用panic()函数处理了它。这不是最佳实践,实际应用中应该更加灵活处理错误。
原文地址: https://www.cveoy.top/t/topic/lCC7 著作权归作者所有。请勿转载和采集!