ali-sdk / ali-ons

Aliyun Open Notification Service Client
MIT License
151 stars 43 forks source link

多次实例化Producer会出现TBW102异常 #99

Open Kenshinhu opened 4 years ago

Kenshinhu commented 4 years ago

变量多次实例化Producer会出现 以下问题: No topic route info in name server for the topic: TBW102 See http://rocketmq.apache.org/docs/faq/ for further details. See http://rocketmq.apache.org/docs/faq/ for further details.

如果是仅实例一次 client 就不会出现这个问题 如果producer 多次实例化就就会出现

class MQProducerService extends Service { async send(topic, tags, payload, opts) { const logger = this.ctx.logger; const producer = new Producer(opts); let sendResult; try { const msg = new Message(topic, tags, JSON.stringify(payload)); sendResult = await producer.send(msg); } catch (err) { logger.error(err); } return sendResult; } }

denghongcai commented 4 years ago

用法不太对,不要每次都重新初始化 Provider,要复用

Kenshinhu commented 4 years ago

用法不太对,不要每次都重新初始化 Provider,要复用

那有没有方法可以 销毁 Provider? 因为Producer 需要动态实例化

Yuan-ZW commented 3 years ago

同样的问题, 我是多次实例化Consumer时报错.。 我的需求是能在多个 nameSrv、namespace、topic等不同的 mq之间切换连接。 如果能够复用的话当然也可以, 不过我没有找到相关文档。