c# - AWS Lambda 函数增加 Max Memory Used
问题描述
我有一个内置于 .NET Core 2.1 的 AWS Lambda 函数。这是由 SQS 队列触发的。
此函数的最大内存为 512MB,超时时间为 2 分钟。
查看 CloudWatch 日志,我看到在执行一定次数后,Max Memory Used 有所增加。请参阅下面的图片:
在执行一些操作后它不断增加,从 217MB 到 218MB,之后到 219MB 等等。此功能运行多次且频率很高。
有人在 AWS Lambda 上遇到过这个问题吗?提前感谢您的帮助。
解决方案
这是假设您的代码中的某个地方没有错误,并且您正在处理相同数量的工作......
AWS Lambda 让您的应用程序代码实例运行一段时间,以确保对它的后续请求是快速的,因此这可能只是垃圾收集尚未在运行您的代码的进程上运行的问题。
相反,当您的应用程序甚至不使用 256MB 时,我更关心的是支付 512MB。请记住,您无需为使用的内容付费,而是为分配的内容付费。
编辑:根据水泥块的评论,请记住,更改内存分配会影响您的 CPU 和网络共享。
推荐阅读
- c - 如何编写一个名为 vowel 的函数返回非零 C 编程的程序(帮助!!)
- amazon-web-services - 2个ec2实例相互交互
- c# - 从基于 Is64Bit bool 的路径中获取 FileInfo
- node.js - 如何更改 npm 中的默认 package.json 位置?
- laravel - Laravel Artisan Migrate 命令创建表但不将每个迁移文件填充到迁移表
- bash - 如何在bash中删除具有不同长度的字符串的最后一部分
- html - 以角度删除行
- c# - 无法从父视图模型 WPF MVVM 应用程序的弹出窗口中获取值
- c# - 在控制台应用程序中的另一个按键后检查按键(GetAsyncKeyState C#)
- angular - Angular ng test cause error if I have types "node" in compiler option