文档

限流配置

更新时间:

当计算引擎出现性能瓶颈、资源分配不足或需控制任务下发时间和顺序等场景时, 通过配置开发或生产环境任务的限流规则,保障系统的稳定性以及业务数据按序及时产出。本文为您介绍如何进行限流配置。

背景信息

在未进行限流配置的情况下,任务是否可以运行主要受到上游依赖、定时时间以及调度资源的影响,满足上述条件即下发,但可能出现以下问题:

  • 批量补数据场景下,如果圈选的时间周期过长,会抢占调度资源,影响周期任务或即席查询等任务的正常运行及业务数据产出。

  • 低优先级任务比高优先级任务更早满足运行条件并下发至计算引擎,占用大量计算资源,影响高优先级任务运行。

  • 集群调度资源或底层计算资源有限,可能导致大规模的任务等待运行,继而引发计算引擎雪崩。

具备限流配置的能力后,可以达到以下目标:

  • 控制同时下发到计算引擎侧的任务数,保证计算引擎不会出现并发过高、请求过多等原因导致的系统性崩溃,保障系统稳定性。

  • 控制高优先任务优先分配资源、优先运行,保证数据按序、及时的产出。

使用限制

在进行限流配置前,需要关注以下限制:

  • 目前仅支持离线任务限流配置,不支持实时任务(包括实时计算任务和实时集成任务)。

  • 最多创建50条限流规则。

  • 支持限流配置操作角色的权限说明如下表所示。

    操作

    角色

    新增、批量操作

    超级管理员、系统管理员

    编辑、删除

    超级管理员、系统管理员、规则负责人

    查看规则详情

    无权限管控

(可选)步骤一:新建限流规则标签

限流规则标签主要是用来对限流规则进行标识和分类,您可以新建限流规则标签,设置目标关键词,方便后续的定位与查找。

  1. 参见入口介绍,进入运维中心。

  2. 运维页面的左侧导航栏,选择系统配置-限流配置

  3. 限流配置页面,按照下图指引,新建限流规则标签。

    新建规则标签

    参数

    说明

    标签名称

    必填。自定义标签名称,不超过128个字符。

    描述

    可填写对于该标签的描述信息,不超过256个字符。

步骤二:新建限流规则

您可以快捷对生产或开发环境进行全局限流配置,也可以结合业务场景,基于归属项目、任务类型等任务属性筛选需要限流的目标任务,自定义配置限流规则。

说明

限流规则配置完成后立刻生效,请评估是否会影响相关业务数据使用后再进行配置。

  1. 限流配置页面,单击新建限流规则

    image
  2. 新建限流规则对话框,按照下表填写页面参数后,单击确定

    image

    参数

    说明

    规则名称

    必填。自定义限流规则名称,不超过128个字符。

    描述

    可填写对该规则的描述信息,不超过256个字符。

    责任人

    必选。默认为当前创建人,您可以单击下拉列表选择其他责任人。

    标签

    非必填。单击下拉列表,选择(可选)步骤一:新建限流规则标签创建的标签。

    生效环境

    限流规则生效的环境。包括:

    • 生产环境

    • 开发环境

    说明

    不同环境可选的配置对象不同,切换环境后将清空现有的规则,您需要重新进行配置。

    规则配置

    全局限流对目标环境下的所有任务进行限流。

    自定义规则

    在当前关系添加包含指标和条件值的规则。

    • 所属项目

      • 任务属性:支持属于不属于

      • 条件值:

        • 生效环境开发环境时,可搜索当前租户下所有Dev项目。

        • 生效环境生产环境时,可搜索当前租户下所有Basic和Prod项目。

    • 调度类型

      • 任务属性:支持等于不等于

      • 条件值:

        • 周期实例:周期任务按照调度配置自动定时运行生成的实例。

        • 手动实例:包含计算任务、集成任务、同步任务、萃取补数据任务、标签测试运行任务生成的实例。

        • 补数据实例:通过不补数据操作生成的实例。

        • 一次性运行:包含即席查询、计算任务试运行、逻辑表冒烟测试、集成任务试运行。

    • 任务类型

      • 任务属性:支持属于不属于

      • 条件值:

        • 计算引擎为MaxCompute:包含MAX_COMPUTE_SQL、MAX_COMPUTE_MR、SPARK_JAR_ON_MAX_COMPUTE、SHELL、PYTHON、VIRTUAL、DLINK、DATAX、PAI DESIGNER、Flink批任务。

    • 业务类型

      • 任务属性:支持等于不等于

      • 条件值:

        • 集成同步:对应DLINK任务。

        • 离线数据处理:对应离线计算任务、DATA_X同步任务、FLINK_SQL_BATCH任务。

        • 建模研发:仅智能研发版支持,对应所有逻辑表任务。

        • 萃取研发:仅购买萃取支持,对应所有萃取任务。

    并发运行数

    设置并发运行数,需要结合实际限流场景进行配置。

    说明

    并发数为0代表不下发。

    生效时间

    设置限流规则生效时间。支持设置全时间段指定时间范围指定时间区间

    全时间段:根据配置的限流规则持续生效。

    指定时间范围:指定时间范围内均生效。例如:2022-09-11 00:00:00 ~ 2022-09-11 11:00:00。

    说明

    适用于需要在特定时间区间进行限流的场景。

    指定时间区间:指定选中日期范围内的具体时间段内生效。例如:2022-09-11 ~2022-09-12 00:00:00 ~ 11:00:00。

    说明

    适用于需要在特定时间段进行限流的场景。

    创建完成后,即可在限流配置页面,对限流规则进行管理。限流配置

    场景

    操作步骤

    开启或关闭限流规则

    • 单个开启或关闭:在开启状态列,单击开启或关闭图标。

    • 批量开启或关闭:选择多个限流规则,单击限流配置页面下方的开启关闭

    说明
    • 开启后,将对当前租户下所有命中限流规则的任务生效,可能会影响运行正常下发。

    • 关闭后,已配置的限流规则失效。如果同一时间内任务并发度过高,可能会对计算引擎和外部数据源造成压力,请谨慎评估。

    查看限流规则配置详情

    操作列,单击详情图标。

    修改限流规则配置

    操作列,单击编辑图标。

    复制限流规则

    操作列,单击复制图标。

    删除限流规则

    • 单个删除:在操作列,单击删除图标。

    • 批量删除:选择多个限流规则,单击限流配置页面下方的删除

    说明

    删除后,所有命中该限流规则且未下发的任务均不再受该规则管控,请谨慎评估是否会影响核心业务数据产出或产生过高并发造成较大的系统压力。

    修改限流规则责任人

    选择一个或多个限流规则,单击限流配置页面下方的修改责任人

    修改或清空限流规则标签

    选择一个或多个限流规则,单击限流配置页面下方的修改标签

  • 本页导读 (0)
文档反馈