本文介绍您在使用 Go SDK 接入火山引擎消息队列 RocketMQ版时,需要配置的参数。
配置示例:
// 通用的使用方式 p, _ := rocketmq.NewProducer( producer.WithNsResolver(primitive.NewPassthroughResolver([]string{"127.0.0.1:9876"})), producer.WithRetry(2), // 在这里添加新的配置参数 )
参数说明:
参数 | 是否必选 | 说明 | 配置方式 |
---|---|---|---|
WithGroupName | 可选 | Producer 组名,即您在火山引擎 RocketMQ 控制台上创建的 Group ID。 说明 对于2022年12月16日之前创建的实例,此处配置的格式为 |
|
WithInstanceName | 在单个进程启动多个客户端时必选 | 客户端标识(Client ID)。一个进程中需要创建多个 RocketMQ 客户端连接不同实例时,需要通过 InstanceName 区分客户端连接。 | producer.WithInstanceName("instance") |
WithSendMsgTimeout | 可选 | 发送消息的超时时间。 | producer.WithSendMsgTimeout(3 * time.Second) |
Retry | 可选 | 重试次数。 | producer.Retry(3) |
WithInterceptor | 可选 | 拦截器。 | primitive.Interceptor |
WithQueueSelector | 顺序消息时需要填写 | 消息投递选择队列的逻辑。RocketMQ 提供内置的队列选择器,您可以根据业务需要任选一种。
|
|
WithCredentials | 必选 | 密钥信息,包括 AccessKey 和 SecretKey。 |
|
WithNsResolver | 必选 | 指定用于解析 NameServer 地址的路由,NameServer 地址和域名任选其一。 |
|
参数 | 是否必选 | 说明 | 配置方式 |
---|---|---|---|
WithConsumerModel | 可选 | 消费模式。默认为 Clustering,即集群模式。
|
|
WithConsumeFromWhere | 可选 | 新的Consumer Group启动后,用于确定从何处开始拉取。取值包括:
|
|
WithConsumerOrder | 顺序消费时必选 | 配置是否为顺序消费模式,默认为 false,即不顺序消费。 |
|
WithConsume | 可选 | 每次消费一批消息的时候包含多少条消息,默认为 1。 |
|
WithInterceptor | 可选 | 拦截器,用于拦截消费者。 | primitive.Interceptor |
WithGroupName | 必选 | Consumer 的组名。即您在控制台上创建的 GroupID。 说明 对于2022年12月16日之前创建的实例,此处配置的格式为 |
|
WithInstance | 在单个进程启动多个客户端时必选 | 客户端标识(Client ID)。一个进程中需要创建多个 RocketMQ 客户端连接不同实例时,需要通过 InstanceName 区分客户端连接。 |
|
WithCredentials | 必选 | RocketMQ 实例的密钥,即您在火山引擎控制台中、RocketMQ 实例的密钥管理页面创建的密钥,用于身份认证。 |
|
WithMaxReconsumeTimes | 可选 | 消费最大重试次数,默认为 -1,即重试 16 次。 |
|
WithStrategy | 可选 | 集群模式下队列分配逻辑。详细信息请 consumer 包里面的 |
|