函数计算是请求级别的隔离,所以可以认为这个请求结束了,实例就有可能进入到一个“静默” 的状态了,而在函数计算中,API 网关触发器通常是同步调用(以阿里云函数计算为例,通常只 在定时触发器、OSS 事件触发器、MNS 主题触发器和 IoT 触发器等几种情况下是异步触发), 这就意味着当 API 网关将结果返回给客户端的时候,整个函数就会进入“静默”状态,或者被 销毁,而不是会继续执行完异步方法,所以通常情况下像 Tornado 等框架就很难在 Serverless 架构下发挥其异步的作用。当然,如果使用者需要异步能力,可以参考云厂商所提供异步方法, 以阿里云函数计算为例,阿里云函数计算为用户提供了一种异步调用能力,当函数的异步调用 被触发后,函数计算会将触发事件放入内部队列中,并返回请求 ID,而具体的调用情况及函数 执行状态将不会返回。如果用户希望获得异步调用的结果,则可以通过配置异步调用目标来实 现:
答复内容摘自《Serverless 开发速查手册》,这本电子书收录开发者藏经阁 下载连接:https://developer.aliyun.com/ebook/download/7490
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。