词汇表

最近更新时间:2018-11-07 09:39:45

本部分介绍了腾讯云 CMQ 队列的基本属性、队列和消息的标识符等内容。

1. 消息相关名词

专有名词 对应英文 解释
消息 Message 需要在不同进程间传递的内容,包含数据和属性两部分
消息 ID Message ID 每条消息都会收到一个系统分配的消息 ID,这对于识别消息很有用
消息句柄 ReceiptHandle 每一次用户从消息服务的队列里读取到一条消息时,都会同时获取一个可以操作这条消息的句柄(Handle)。

用户可使用消息句柄来删除消息或修改消息的一些属性,句柄与接收消息的操作相关联,与消息本身无关。要删除或更改消息时必须提供消息句柄,而不是消息 ID。这意味着,必须始终先接收消息,然后才能更改/删除它。

腾讯云 CMQ 提供的消息句柄具有时效性,会在用户预先设定的时间后失效(默认是 30 秒,用户可自定义)。

腾讯云 CMQ 消息服务提供的有时效的消息句柄可以有效避免 数据误操作,也极大降低了句柄泄露可能给用户带来的风险
生产者 Producer 向 CMQ 的消息服务发送消息的角色
消费者 Consumer 从 CMQ 的消息服务获取消息的角色

2. 队列(Queue)相关名词

专有名词 对应英文 解释
队列 Queue 消息存储的目的地,消费者主动从这里获取消息。在一个队列中使用 MessageId 或 ReceiptHandle 唯一标识一个消息
主题 Topic 发布消息的目标和存储地址,自动发送至所有有需要的消费者
请求 Request 消费者向队列获取消息时发送的内容
消息接收模式 Message-receiving model 消费者获取消息的方式,当前仅支持消费者主动获取的 PULL 模式。后续将支持 CMQ 主动推送的 PUSH 模式
可见消息 Activemessages 队列中处于 Active 状态的消息总数(近似值)
不可见消息 InactiveMessages 队列中处于 Inactive 状态的消息总数(近似值)
长轮询 Long Polling 长轮询下,一个消息消费请求只会在取到有效消息或长轮询超时时才返回响应,可以避免重复、多次无效轮询
轮询等待时间 PollingWaitSeconds 轮询超时的最大等待时间。单位秒,有效值范围为 0-30 秒。
消息最大长度 MaxMsgSize 限定允许发送到该队列的消息体的最大长度;单位为 byte, 有效值范围为 1024-65536 也即 1K 到 64K
消息生命周期 msgRetentionSeconds 消息在本队列中最长的存活时间,从发送到该队列开始经过此参数指定的时间后,不论消息是否被取出过都将被删除;单位为秒,有效值范围 60-1296000 秒,也即 1 分钟到 15 天
消息消费次数 DequeueCount 队列中消息总共被消费过的次数
消息首次消费时间 FirstDequeueTime 队列中消息第一次被消费的时间
消息内容 Message Body 接收到的消息正文,腾讯云消息发送接收的缺省编码为 base64, 和 Message Service 的官方 SDK 一致。
消息摘要 MsgBodyMD5 用于消费时校验信息是否被篡改
取出消息隐藏时长 VisibilityTimeout 消息被接收后,在此时长内没有处理完此 Message 则这个消息可能被其他人接收并处理。单位为秒,有效值范围 1-43200 秒,也即 1 秒到 12 小时,在接收到消息时开始计时
消息下次可消费时间 NextVisibleTime 已被接收到的消息下次可被再次消费的时间
死信队列 DeadLetterQueue 开启死信队列后,对于超过最大消费次数且没有被删除或者超过过期时间的消息,都将根据规则投递到死信队列中

3. 主题(Topic)相关名词

专有名词 对应英文 解释
订阅者 Subscriber 指 CMQ-topic 模式下,服务的订阅方
生产 Produce 指生产者,往 topic 内写入消息的操作
投递 Subscription 指 topic 向订阅者投递消息的过程
消息接收模式(PUSH) Message-receiving model(PUSH) CMQ 的 TOPIC 模型,已支持主动推送的 PUSH 模式
重试策略 NotifyStrategy 订阅的NotifyStrategy属性,向接收端推送消息出现错误时的重试策略。该策略默认开启。有两个选项,二选一:a.退避重试:重试 3 次,间隔时间 10-20s 之间的一个随机值,超过 3 次后,该条消息对于该订阅者丢弃,不会再重试; b. 衰退指数重试:重试 176 次,总计重试时间为 1 天,间隔时间依次为:2^0,2^1, …, 512, 512, …, 512 秒。默认勾选 衰退指数重试策略。两者必须勾选 1 个
消息生命周期 msgRetentionSeconds 消息在 TOPIC 中最长的存活时间,从发送到该队列开始经过此参数指定的时间后,不论消息是否被取出过都将被删除;单位为秒,默认值为 86400s(1天),不允许修改
消息最大长度 MaxMsgSize 限定允许发送到该队列的消息体的最大长度;单位为 byte, 有效值范围为 1024-65536 也即 1K 到 64K
消息堆积 MessageRetentionPeriod 默认开启。存在生产者的消息,还未触发投递到订阅者,或订阅者接收消息失败,暂时堆积到 TOPIC 中,进行多次重试。该项目无法配置,最大堆积时间为 1 天
重试验证 Status code TOPIC 投递到订阅者后,若 HTTPS 返回码为 200,则认为成功
添加订阅者标签 FilterTag 添加订阅者时,可增加FilterTag,增加 filtertag 后,该订阅者仅能收到带该 filtertag 的消息。单个 tag 不超过 16 个字符的字符串,单个订阅者可最多添加 5 个 tag。只要其中某个 tag,能匹配 topic 的过滤标签,都能收到该次 topic 投递的消息,若消息不带任何标签,则该订阅者无法收到该类型消息
添加消息过滤标签 Messagetag 即消息标签、消息类型,用来区分某个 CMQ 的 Topic 下的消息分类。MQ 允许消费者按照Tag对消息进行过滤,确保消费者最终只消费到他关心的消息类型。该功能默认不开启,未开启时,所有消息向所有订阅者发送,当订阅者设置了 tag 时,由于不匹配,该订阅者无法收到消息。消息过滤标签描述了该订阅中消息过滤的标签(标签一致的消息才会被推送)。单个 tag 不超过 16 个字符的字符串,单个message可最多添加 5 个 tag
开启日志轨迹 LoggingEnabled 是否开启日志管理功能,True 表示启用,False 表示停用。启用后,CMQ 的原始 log 会写入 COS 对象存储。且用户可通过 CMQ 控制台,做 LOG 聚合查询,免除自行搭建分析系统的繁琐