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

Serverless 应用引擎这个只能上传一个文件,怎办啊?

Serverless 应用引擎这个只能上传一个文件,怎办啊?我一个服务有两个jar包fc7bd8cf5a8bdfbecf93596842e22ab6.png

展开
收起
真的很搞笑 2024-03-25 11:57:21 61 0
4 条回答
写回答
取消 提交回答
  • 1、打到一个镜像里部署;2、上传主进程jar,另外个用oss或nas挂进去。 ,此回答整理自钉群“【3群】Serverless应用引擎(SAE)用户群”

    2024-03-26 07:59:03
    赞同 展开评论 打赏
  • 阿里云大降价~

    在Serverless应用引擎中,如果需要上传多个文件,可以考虑以下几种解决方案:

    1. 使用云存储服务:将文件上传到云存储服务如OSS(对象存储服务),然后通过URL引用这些文件。这样可以避免直接在Serverless环境中处理文件上传的限制。
    2. 压缩文件上传:将多个文件压缩成一个压缩包,然后上传这个压缩包。在服务器端,可以解压缩这个包来获取所有文件。
    3. 分次上传:如果文件数量不多,可以考虑分次上传,每次上传一个文件。虽然这样做效率较低,但可以确保每个文件都被正确处理。
    4. 使用NAS(网络附加存储):如果有多个实例需要共享文件,可以考虑使用NAS作为中间存储,实例可以从NAS读取或写入文件。
    5. BASE64编码:将文件内容转换为BASE64字符串,然后将其作为环境变量或配置信息传递给函数。这种方法适用于较小的文件,因为它会增加请求的有效负载大小。

    总的来说,在选择适合的方法时,需要考虑文件的大小、数量以及Serverless平台的具体限制。例如,API网关与FaaS平台之间传递的数据包有大小限制,很多平台被限制在6MB左右。因此,如果文件较大,直接使用BASE64编码可能不太合适。此外,由于Serverless平台通常是无状态的,即使将文件存储到当前实例中,实例释放后文件也会丢失,所以不推荐将文件直接存储在实例中。

    2024-03-25 15:27:22
    赞同 展开评论 打赏
  • 在Serverless应用引擎(如阿里云Serverless应用引擎SAE)中,如果你的服务依赖于多个JAR包,通常会有两种解决办法:

    • 打成一个可执行的Fat JAR(或Uber JAR)

    Fat JAR或Uber JAR是指将所有依赖的库和主应用程序类一起打包成一个单独的JAR文件。这样,只需上传这一个JAR文件到Serverless应用引擎,就能包含服务运行所需的所有组件。Java项目中常见的构建工具如Maven或Gradle都可以通过插件(如Maven Shade Plugin或Gradle Shadow Plugin)来生成这样的JAR包。

    • 多模块部署

    如果Serverless应用引擎支持多模块部署,那么可以分别上传各个模块,然后在服务配置中指定这些模块的加载顺序和关系。
    对于阿里云SAE来说,虽然上传时只允许上传一个主入口JAR包,但可以考虑将依赖的另一个JAR包作为依赖资源上传至指定的目录,然后在启动命令或环境变量中配置类路径,使得服务启动时能加载到这些额外的JAR包。

    2024-03-25 14:09:25
    赞同 展开评论 打赏
  • 在Serverless应用引擎中,如果您需要上传多个文件,可以考虑以下几种方法:

    1. 使用BASE64编码:将文件转换为BASE64编码后上传,这种方法适用于较小的文件,如头像等。但需要注意API网关与FaaS平台之间可能存在的数据包大小限制。
    2. 对象存储服务:您可以使用阿里云的对象存储服务(OSS)来存储文件。客户端可以通过预签名的URL直接将文件上传到OSS,然后通过对象存储触发器来更新上传结果。
    3. 分次上传:如果两个jar包都是必须的,您可能需要将它们分别打包成两个独立的应用,并分别部署。这样,每个应用可以上传一个jar包。
    4. 压缩文件:如果两个jar包中有一个是依赖包,您可以考虑将其中一个jar包作为另一个的应用依赖,这样只需上传一个文件即可。这通常涉及到将两个jar包合并成一个压缩文件,然后在应用中解压使用。
    5. Webshell上传:SAE在控制台提供了简易版Webshell,您可以通过Webshell查看并调试容器,以及上传或下载日志文件。这种方式可能需要您手动操作,但对于诊断问题和上传文件是有帮助的。

    总的来说,在选择适合的方法时,请考虑到您的具体需求、文件大小以及安全性等因素。如果您对如何在Serverless应用引擎中上传文件还有疑问,建议咨询技术支持或查阅官方文档获取更详细的指导。

    2024-03-25 14:03:35
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • Serverless 应用引擎
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载