开发者社区 > 云原生 > Serverless > 正文

函数计算FC使用fc服务,当并发请求时,api服务是并发处理 还是排队串行处理的?

函数计算FC使用fc服务,当并发请求时,api服务是并发处理 还是排队串行处理的?e6ef36eab8a181ebc2b27f7163bb6fd3.png

展开
收起
三分钟热度的鱼 2023-07-19 20:11:36 48 0
3 条回答
写回答
取消 提交回答
  • 函数计算(Function Compute)中的 API 服务会并发处理请求,而不是排队串行处理。

    当并发请求到达函数计算服务时,函数计算会根据配置的并发度和负载情况,自动创建多个函数实例来同时处理这些请求。每个请求会被分配给一个可用的函数实例进行处理,并且可以同时处理多个请求。

    这种并发处理的方式有助于提高系统的吞吐量和响应速度,尤其在面对高并发请求的场景下。函数计算平台会自动管理函数实例的创建、销毁和负载均衡,以保证请求能够快速得到响应。

    需要注意的是,并发处理仅限于同一个函数的请求。如果多个函数被同时触发,每个函数将独立处理自己的请求,并且可能使用不同的并发资源。因此,在设计应用程序时,您需要考虑函数之间的协调和通信方式,以确保数据的一致性和正确性。

    2023-07-23 09:19:07
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    在函数计算(Function Compute,FC)中,当使用FC服务部署API服务时,API服务的并发处理方式取决于您的配置和使用情况。

    具体来说,如果您在创建API服务时选择了并发处理(Concurrent Invocation)方式,那么API服务会同时处理多个请求,即并发处理。在这种情况下,您可以通过配置并发限制(Concurrency)参数来限制同时处理请求的数量。当请求的数量超过并发限制时,多余的请求会被暂时排队等待处理,直到有处理资源可用为止。

    如果您选择了排队串行处理(Sequential Invocation)方式,那么API服务会按照请求的顺序依次处理每个请求,即排队串行处理。在这种情况下,您可以通过配置等待超时时间(Timeout)参数来限制请求的等待时间。如果请求等待超时,FC会返回一个超时错误,并终止请求处理。

    2023-07-22 10:45:53
    赞同 展开评论 打赏
  • 不超过单实例并发度(默认 100)时,是排队串行;超过后会有新的实例弹出,会根据实例个数并行。
    新实例可能会有额外的冷启动,并且丢失之前的状态哈。建议根据实际需要调整下调用方代码狄杰。此回答整理自钉群“【答疑群】人人都是创作家,Serverless 部署 AIGC 场景”

    2023-07-19 20:27:06
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    All in Serverless 阿里云核心产品全面升级 立即下载
    AIGC 浪潮之上,森马的 Serverless 实践之旅 立即下载
    极氪大数据 Serverless 应用实践 立即下载