赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 函数计算 FC 2.0
  4. 常见问题
  5. 函数调用FAQ
  6. 在函数代码中创建了进程线程协程,为什么它们没有被执行?

在函数代码中创建了进程线程协程,为什么它们没有被执行?

  • 函数调用FAQ
  • 发布于 2025-04-16
  • 0 次阅读
文档编辑
文档编辑

函数计算是按照请求计费的,如果请求响应了,实例就会被冻结,子线程中的代码也就无法执行了。解决这种情况有以下三种方案。

  • (推荐)您可以将需要进行异步处理的逻辑,单独作为一个函数,然后使用函数的异步调用功能,在原函数中使用函数计算的SDK或HTTP URL,通过异步调用的方式调用新函数,从而达到异步执行的效果。

    例如:您的请求是同步请求完成用户注册,然后异步给用户发送确认邮件。那么您需要改造您的函数,将发送邮件的逻辑放到一个新的函数中,然后在原有的函数完成用户注册之后,在代码中使用函数计算的SDK异步调用发送邮件的新函数。

  • 您可以在子线程中完成请求响应,从而避免函数被冻结。

  • 使用预留实例,并关闭预留实例的闲置计费功能,这样实例就不会被冻结了,但费用较高。关于预留实例计费信息,请参见预留模式。

相关文章

我的客户端不关心函数执行结果,我不希望我的客户端一直等函数返回怎么办? 2025-04-16 14:21

您可以使用函数计算的异步调用,异步调用会将您的请求加入到后端队列,客户端会立即返回。函数计算后端会将队列中的请求做并发调用。各SDK的async Invoke请参见: P

HTTP请求支持异步调用吗?如何获取调用结果? 2025-04-16 14:21

支持。您可以通过增加请求头"X-Fc-Invocation-Type":"Async"的方式实现HTTP请求的异步调用。具体信息,请参见HTTP触发器概述。

怎样通过函数计算运行Nginx? 2025-04-16 14:21

函数计算支持运行Nginx。您可以使用Serverless Devs工具或通过应用中心快速部署一个Nginx示例函数。具体操作,请参见start-nginx。

报错为“EntityTooLarge:payload size exceeds maximum allowed size”,如何处理? 2025-04-16 14:21

函数调用分为同步调用和异步调用,其中同步调用的最大Payload为32 MB,异步调用的最大Payload为128 KB。Payload大小不支持后台修改,如果您的业务的Payload超过了对应的限制,并且无法减小,建议您将输入作为文件上传到OSS,然后再通过OSS触发器触发函数。

在函数代码中创建了进程线程协程,为什么它们没有被执行? 2025-04-16 14:21

函数计算是按照请求计费的,如果请求响应了,实例就会被冻结,子线程中的代码也就无法执行了。解决这种情况有以下三种方案。 (推荐)您可以将需要进行异步处理的逻辑,单独作为一个函数,然后使用函数的异步调用功能,在原函数中使用函数计算的SDK或HTTP URL,通过异步调用的方式调用新函数,从而达到异步执行

调用函数时,日志中出现警告could not determine the L2 cache size on this system, assuming 256k如何解决? 2025-04-16 14:21

错误解析 函数日志中出现下方的警告,表示无法确定系统的L2缓存大小,因此假设默认值为256 KB。 could not determine the L2 cache size on this system, assuming 25

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号