tencent cloud

文档反馈

异步执行

最后更新时间:2024-04-19 16:25:56

    使用场景

    在音视频转码、ETL 大体量数据处理、AI 推理等单任务重计算的场景下,函数的单实例运行时需要更多算力及更长时间的稳定运行。若函数的调用端长时间阻塞等待执行结果,不仅会持续占用调用方资源,还会对调用链路的稳定性产生较高要求。 云函数 SCF 提供了一种全新的函数运行机制,您可通过 SCF 提供的函数异步执行模式,提升执行超时时间上限和解决现有运行机制的问题。

    运行机制

    基础原理

    函数启用异步执行后,通过同步(例如 API 网关)或异步(例如 COS、CKafka、Timer 等)调用端进行事件调用,函数将以异步执行模式响应事件。 即完成事件调度后立即返回事件的调用标识 RequestId,并结束调用操作,调用端无需阻塞等待。返回 RequestId 的同时,调用引擎将并行下发事件到函数运行时,开启函数逻辑执行。进入异步执行状态后,执行日志将实时上报至日志服务,提供对异步执行事件运行情况的实时反馈。其原理如下图所示:
    

    注意事项

    由于运行机制差异
    暂不支持切换同步/异步执行模式。仅支持创建函数时选择是否开启“异步执行”功能,函数创建后该配置将锁定,不提供修改更新操作。
    暂不支持异步调用时,函数执行过程中报错的重试设置。
    异步执行函数执行异常均会触发实例回收。
    事件调用成功,返回信息只包含 RequestId。事件执行结果需要在函数代码逻辑中自行实现回调特定的 API 或者发送通知消息。
    异步执行目前支持最长执行时长为24小时。如需更长运行时长,可 提交工单 申请。
    如果通过函数运行角色获取对其他云服务组件的访问权限,角色密钥有效期最长为 6 小时,如函数实际执行时间超出 6 小时,建议使用永久密钥。
    异步运行函数调用 QPS 限制为 1000,超出部分将被限制,造成响应失败。

    操作步骤

    1. 登录 云函数控制台,单击左侧导航栏的函数服务
    2. 在主界面上方选择期望创建函数的地域,并单击新建,进入函数创建流程。
    3. 选择使用空白函数或选择使用函数模板来新建函数。
    4. 在“函数配置”页面,展开高级设置,并勾选异步执行
    5. 单击完成即可创建函数。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持