开发者社区 > 云原生 > 消息队列 > 正文

消息队列线上,线下环境部署需要注意的一些问题

一般用户会选择在公网环境下调试程序,调试结束后,再将程序发布到正式环境。

公网环境,指的是在控制台创建 Topic 时,指定“公网”,那么生产端/消费端可以部署在本地,也可以部署在 ECS(跨地域)。

正式环境,指的是在控制台创建 Topic 时,指定某个地域(北京,杭州…),那么生产端/消费端必须部署在相应地域的 ECS(不能跨地域)。

不同地域的 Topic 相关数据(包括 Producer ID, Consumer ID),根据地域不同,会由不同的 broker,不同的集群来处理,所以我们建议您使用配置文件,给线下(公网),线上(正式)环境使用不同的 Topic,Producer ID 和 Consumer ID。

例如,线下(公网)使用 Topic A,Producer ID A, ConsumerID A;线上(正式)使用 Topic B, Producer ID B,Consumer ID B。

两个环境的数据不要混在一起使用。

下面举两个常见的错误做法:

1)公网使用 Topic A,Producer ID A,Consumer ID A;删除 Topic A,Producer ID A, Consumer ID A 后,在正式环境,创建同样名字的 Topic A,Producer ID A,Consumer ID A 来使用。

2)公网使用 Topic A,Producer ID A,Consumer ID A,正式环境使用 Topic B,Producer ID A,Consumer ID A。

上面的错误做法,容易导致系统数据混乱,比如,消息本来应该发送到正式环境 broker,却发给了公网环境 broker,导致数据鉴权失败;所以在实际部署中,我们要求用户将两个环境的数据严格分开。

如果问题还未能解决,请联系售后技术支持。

展开
收起
猫饭先生 2017-10-30 09:52:21 1745 0
0 条回答
写回答
取消 提交回答

多个子产品线联合打造金融级高可用消息服务以及对物联网的原生支持,覆盖多行业。

相关电子书

更多
企业互联网架构之消息队列 立即下载
基于消息队列RocketMQ的大型分布式应用上云最佳实践 立即下载
云原生消息队列Apache RocketMQ 立即下载