Skip to content

Serverless TPS 达到限制告警处理指南

Serverless TPS 达到限制告警表示 EMQX Cloud Serverless 部署在实时消息处理过程中,消息吞吐量(TPS)已达到或超过部署规格所允许的上限(1000 TPS)。

该情况通常意味着当前消息吞吐量已达到部署规格上限,可能导致消息发布被丢弃,从而对业务产生影响。常见问题包括业务高峰期消息量突增,或客户端 SDK 异常导致消息发布速率过快。

消息在短时间内突增

问题描述

在业务高峰期或批量任务触发时,可能会在短时间内集中发布大量消息,导致实时消息 TPS 短时超过 Serverless 部署规格上限,从而触发告警。

在部署概览页面中,若观察到实时消息上下行 TPS 达到或超过部署上限,则通常符合此类情况。

常见原因

  • 业务高峰期消息集中发布。
  • 批量任务或定时任务在短时间内触发。

处理方法

  • 提前根据业务规模评估消息量峰值。
  • 在持续高吞吐场景下,按需切换为专有版部署并进行扩容,以满足业务需求。

客户端发布速率过快

问题描述

部分客户端未进行速率控制,在极短时间内持续高速发布消息,可能导致单个或少量客户端占用过多 TPS 资源,从而触发整体 Serverless TPS 达到限制告警。

在部署概览 页面中,若实时消息上下行 TPS 达到或超过部署上限,并且整体连接数变化不明显,则通常需要进一步排查客户端发布行为。

常见原因

  • 客户端逻辑异常,导致同一条消息被重复发送。
  • 客户端未实现发布速率限制机制。

处理方法

  • 检查客户端逻辑,确认是否存在重复发送消息的情况。
  • 在客户端侧增加发布速率限制机制,避免过快的消息发布对系统造成冲击。
  • 结合发布速率限制相关日志,根据 clientid监控 -> 客户端页面中定位发布量异常的客户端。

排查步骤

  1. 登录 EMQX Cloud 控制台。

  2. 打开部署概览 页面,查看消息上下行 TPS 指标,确认实时 TPS 是否达到或超过部署规格上限。

sls_tps_limit_overview

监控与统计

  • 在 EMQX Cloud 控制台的指标 -> 实时指标 -> 总 TPS 中,可以查看当前实时 TPS 数据,用于判断是否仍处于高负载状态。

sls_tps_limit_stats

  • 在 EMQX Cloud 控制台的指标 -> 时间轴 -> 消息流入流出中,可以查看基于时间轴的整体消息数量变化趋势。可通过某一时间节点的总消息数除以 60 秒,计算该时间点的每分钟平均 TPS 值。

sls_tps_limit_monitor

告警影响说明

  • Serverless TPS 达到限制告警仅适用于 EMQX Cloud Serverless 部署
  • 告警触发后,部署不会停止服务,也不会因此立即产生额外计费。
  • 若 TPS 长时间持续超过部署规格上限,可能导致消息被丢弃,从而对业务稳定性产生影响,建议尽快进行排查与优化。