ylbtech-阿里云-ONS-Help-产品动态:产品更新日志 |
1.返回顶部 |
1、
在 2019 年 1 月 23 日,消息队列 RocketMQ 版优化了资源隔离、资源申请、协议支持以及权限管理。本文提供相关更新说明,帮助您更顺畅地使用消息队列 RocketMQ 版。
说明 为兼容新老资源配置,建议您将 ons-client 客户端升级到最新版本。
资源隔离优化(实例化支持)
消息队列 RocketMQ 版开放实例化功能,解决多租之间的隔离问题,每个用户可以在同一个地域(Region)内购买多个实例,每个实例之间逻辑隔离或者物理隔离。
消息队列 RocketMQ 版实例分为以下两种类型:
- 标准版:不同实例之间逻辑隔离,每个地域最多创建 8 个实例。
- 铂金版:不同实例之间物理隔离,每个地域铂金版实例个数不限。详情请查看消息队列 RocketMQ 版铂金版。
为兼容老用户的既有资源,消息队列 RocketMQ 版实例可分为以下两种:
- 默认实例(兼容老用户的既有资源):
- 无独立命名空间,实例内或者跨实例之间,资源命名必须全局唯一;
- 对消息队列 RocketMQ 版老用户来说,既有资源所在地域将自动生成一个默认的无独立命名空间实例;
- 接入点配置(可在控制台实例详情页面中获取):
// 推荐配置 properties.put(PropertyKeyConst.NAMESRV_ADDR, "xxxx"); // 兼容配置(不推荐继续使用,建议逐渐升级为推荐配置) properties.put(PropertyKeyConst.ONSAddr, "xxxx");
- 新建实例:
- 有独立命名空间,资源命名确保实例内唯一,跨实例之间可重名;
- 接入点配置(可在控制台实例详情页面中获取):
// 推荐配置 properties.put(PropertyKeyConst.NAMESRV_ADDR, "xxx");
- ons-client 客户端必须升级到最新版本:
- JAVA:ons-client v1.8.4.Final
- C++:ons-cpp v2.0.0
- .NET:ons-.net v1.1.4
资源申请流程优化
原消息队列 RocketMQ 版的资源包括以下三个部分:
- 消息主题(Topic)
- 生产者(Producer ID)
- 消费者(Consumer ID)
三者之间都是多对多的对应关系,三者之间的关系复杂而难以理解;对于中、大型企业客户来说,每创建一个 Topic,都要关联或者更新 Producer ID 和 Consumer ID,流程过于复杂。
因此,为进一步优化用户体验,降低新用户的接入门槛,对资源申请的接入流程进行简化。
- 资源申请方面,主要包括以下两个部分:
- Topic 管理(保持不变):
- Topic 资源申请,一级消息类型,通过 Topic 对消息进行分类。
- Group 管理:
- 取消原 Producer ID 的申请,与原 Consumer ID 统一为 Group ID,即对应控制台上,取消原生产者管理,与原消费者管理统一为 Group 管理;
- 取消原申请 Producer ID 或 Consumer ID 时需要指定 Topic 的关联约束,只需申请 Group ID 即可在代码中直接配置与 Topic 的关联使用;
- 兼容性相关问题:
- 原申请的 Producer ID 列表将不再显示,不影响当前业务的正常使用;
- 原申请的以 “CID-” 或者 “CID_” 打头的 Consumer ID 仍可以正常使用,代码中既可在
PropertyKeyConst.ConsumerId
中设置,亦可在PropertyKeyConst.GROUP_ID
中设置。
- Topic 管理(保持不变):
- 针对示例代码,原来已经在使用的 Producer ID 或者 Consumer ID 保持兼容,不影响当前在线业务的正常使用,但建议逐步替换为新的推荐配置方式:
- 推荐方式:将 Producer ID、Consumer ID 的概念融合成 Group ID
// 设置 PropertyKeyConst.GROUP_ID,原 PropertyKeyConst.ProducerId 和 PropertyKeyConst.ConsumerId 会被 @Deprecated properties.put(PropertyKeyConst.GROUP_ID, "原 CID-XXX 或 GID-XXX");
- 兼容方式:Producer ID 用来标识生产者,Consumer ID 用来标识消费者
// 创建 Producer 时需要配置 PropertyKeyConst.ProducerId properties.put(PropertyKeyConst.ProducerId, "原 PID-XXX 或 GID-XXX"); // 创建 Consumer 时需要配置 PropertyKeyConst.ConsumerId properties.put(PropertyKeyConst.ConsumerId, "原 CID-XXX 或 GID-XXX");
- 推荐方式:将 Producer ID、Consumer ID 的概念融合成 Group ID
消息队列 RocketMQ 版的标准版实例支持 HTTP 协议,采用 RESTful 标准,方便易用,快速接入,跨网络能力强,并随之开放 7 种多语言客户端。详情请参见 HTTP 协议。
RAM 授权策略迁移
基于阿里云访问控制的统一管理要求,消息队列 RocketMQ 版当前的主子账号授权功能将于 2019 年 4 月 2 日停止维护,请尽快完成授权配置的迁移。
- 建议尽快开始 RAM 相关的策略配置,详情请参见 RAM 主子账号授权;
- 原来已经授权过的资源不会有任何影响,业务仍可正常使用,但是建议统一到 RAM 上进行配置与管理。
2、
2.返回顶部 |
3.返回顶部 |
4.返回顶部 |
5.返回顶部 |
1、
2、
6.返回顶部 |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |