我正在尝试使用上传到 S3 .jar文件更新 Lambda 代码。
直接zip文件上传工作正常
aws lambda update-function-code --function-name function
--zip-file fileb://function.zip
直接 jar 文件上传工作正常
aws lambda update-function-code --function-name function
--zip-file fileb://function.jar
使用S3中的zip文件进行更新工作正常
aws lambda update-function-code --function-name function --s3-bucket bucket
--s3-key function.zip
仅当从 S3 使用 jar 更新函数时出现问题
aws lambda update-function-code --function-name function --s3-bucket bucket
--s3-key function.jar
显然,AWS Lambda试图打开罐子的包装:
调用 UpdateFunctionCode 操作时发生错误 (InvalidParameterValueException):解压缩的大小必须小于 262144000 字节
我在参考update-function-code
https://docs.aws.amazon.com/cli/latest/reference/lambda/update-function-code.html 中找不到任何线索
是否可以使用 S3 中的 jar 文件更新 Lambda 函数?
如果没有,是否有任何参考资料这么说?
您已经达到了 250MB 的上传限制,这就是我从错误消息中所能说的全部内容。
解决方案:处理您的应用程序,或请求支持人员以提高限制。
对于 s3 上传,Lambda 大小可以是 250 MB(解压缩,包括层)。
直接上传是50MB(压缩),但这略高到~70MB,它使用based64编码。
直接上传压缩 (zip/jar) 文件 <70MB 时,您不会看到错误。
如果不希望提取 jar 文件,则必须将其压缩。拉链将被提取!
如果您使用zip,jar,依赖项和层的存在进行更新,可能会告诉更多。