函数计算,FC里配置了访问数据库,请问初始化和回收是每调用一次就创建一次,还是启动的时候创建一次后就不用再创建了?
函数实例是无状态的
每个函数实例在执行完毕后都会被回收。
函数实例会重复利用
函数计算会重用已有的函数实例来执行多个函数调用。
函数实例是短暂的
一个函数实例的生命周期很短,随时可能被回收。
由此可以看出:
每次函数调用时,不会重新创建数据库连接
但函数实例在执行期间,仍然保留数据库连接
一个函数实例被回收后,对应的数据库连接也会关闭
有实例启动后和销毁调用
https://help.aliyun.com/document_detail/422186.html?spm=a2c4g.74753.0.0.2b1d4e53iIWVuv
此答案来自钉钉群“阿里函数计算官网客户"
在函数计算(Function Compute)中,初始化和回收是针对函数执行过程的生命周期管理。当一个函数被触发执行时,函数计算会进行初始化操作,然后执行函数代码,最后进行回收。
初始化阶段会在每次函数被调用时都执行,用于准备函数所需的资源、环境和连接。这包括数据库连接、文件句柄等资源的初始化。每次函数被调用时,都会重新执行初始化过程来确保函数的运行环境是干净的,并可以正确地使用所需的资源。
回收阶段会在函数执行完成后执行,用于释放和清理函数使用的资源,如关闭数据库连接、释放文件句柄、清理临时文件等。回收操作是为了保证资源的有效利用和系统的稳定性。
因此,初始化是每次函数调用时都会执行的操作,而回收也是每次函数执行完毕后都会执行的操作。函数计算不会在启动时创建资源并一直保持,而是根据每次函数调用的需要进行初始化和回收,以确保每次函数执行都有一个独立的运行环境和资源状态。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。