Producer最佳实践
- 一个应用尽可能使用一个topic,消息子类型用tags来标识,tags可以由应用自由设置。
只有发送消息设置了tags,消费方在订阅消息时,才可以利用tags在broker做过滤。
message.setTags(“TagA”); - 每个消息在业务层面的唯一标识码,要设置到keys字段,方便将来定位消息丢失的问题。
服务器会为每个消息创建索引(哈希索引),应用可以通过topic,key来查询这条消息内容,以及消息被谁消费。
由于是哈希索引,请务必保证key尽可能唯一,这样可以避免潜在的哈希冲突。
消费者组和订阅
消息监听器
最佳实践之nameServer
编程的方式
java参数
NameServer的地址表可以通过java参数rocketmq.namesrv.addr,在启动之前指定
环境变量:
Http端点(HTTP Endpoint)
优先级
编程方式>java参数>环境变量>http方式
JVM配置
Linux内核配置