在使用 Golang 发送消息到 RocketMQ 时,你可以使用 Apache RocketMQ Go SDK。以下是一个简单的示例代码:
首先,确保你已经安装了 Go 并设置好环境。
- 安装 RocketMQ Go SDK:
go get -u github.com/apache/rocketmq-client-go/v2
- 导入所需的包和初始化生产者实例:
package main
import (
"context"
"fmt"
"github.com/apache/rocketmq-client-go/v2"
"github.com/apache/rocketmq-client-go/v2/primitive"
)
func main() {
p, _ := rocketmq.NewProducer(
rocketmq.WithNameServer([]string{"localhost:9876"}),
)
err := p.Start()
if err != nil {
fmt.Printf("Failed to start producer: %s\n", err)
return
}
defer p.Shutdown()
}
请注意,将 localhost:9876 替换为你实际的 NameServer 地址。
- 创建要发送的消息并发送:
msg := &primitive.Message{
Topic: "your_topic",
Body: []byte("Hello, RocketMQ!"),
}
res, err := p.SendSync(context.Background(), msg)
if err != nil {
fmt.Printf("Failed to send message: %s\n", err)
return
}
fmt.Printf("Send message success. Result: %s\n", res.String())
将 "your_topic" 替换为你实际的主题名称。
这是一个简单的示例代码,你可以根据自己的需求进行进一步定制和扩展。记得处理错误情况以及在不需要时关闭生产者实例。
内容由零声教学AI助手提供,问题来源于学员提问




