在Serverless架构下,由于FaaS平台是无状态的,文件不能直接持久化在实例中。可以选择持久化到其他的服务中,例如对象存储、NAS等。同时,在不配置NAS的情况下,FaaS平台通常只有/tmp目录具有可写权限,所以部分临时文件可以缓存在/tmp文件夹下。
这个问题问的很好,我来解答,Serverless是无状态的执行完了就完了,如需要持久化文件那么必然是将文件存储到外部存储上
比如阿里的NAS与OSS
设置NAS存储
通常,当容器被销毁时,其内部的数据也会随之丢失,这对生产环境来说可能会产生负面影响。NAS适用于高性能计算和数据共享场景。将NAS挂载至SAE应用实例,可以有效解决应用数据的持久化存储需求,并实现应用实例之间的数据共享。
参考来源
https://help.aliyun.com/zh/sae/user-guide/configure-nas-storage-2-0?spm=a2c4g.11186623.0.i1
设置OSS存储
与NAS相比,OSS提供了便捷的工具以及控制台,支持可视化管理Bucket,并在解决应用实例数据持久化和实例间数据分发问题的基础上,进一步降低成本。OSS适用于读多写少的场景,例如挂载配置文件或者前端静态文件等。
{
"Statement": [
{
"Action": "oss:GetBucket",
"Effect": "Allow",
"Resource": "acs:oss:*:*:test-sae"
},
{
"Action": "oss:GetObject",
"Effect": "Allow",
"Resource": "acs:oss:*:*:/"
}
],
"Version": "1"
}
参考来源
https://help.aliyun.com/zh/sae/user-guide/copnfigure-oss-storage-2-0?spm=a2c4g.11186623.0.i4
回答不易请采纳
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。