首页 > 解决方案 > 如何找出 RAM 中有多少内存分配给我闪亮的应用程序

问题描述

我有一个使用闪亮仪表板包制作的应用程序。它具有三个脚本:ui.R、server.R 和 global.R。一年来,这个应用程序已经毫无问题地托管在 shinyapps.io 上。但是,它确实使用 API 从 Amazon Web 服务中的数据库中提取数据。随着时间的推移,数据不断增长,最终我的应用程序超过了免费帐户允许的 1GB RAM 内存。我收到错误消息,“正常退出,代码 137,信号 9 (SIGKILL)”。我查看了shinyapps.io 中的日志,我看到它说:“内存不足!”。我决定简化我的应用程序并大大减少使用 API 导入的数据量,但是我仍然遇到同样的错误。

我决定使用该程序包profvis来分析我的应用程序并查看运行缓慢的内容以及需要大量内存分配的内容,但我无法准确告诉我的应用程序分配了多少内存。

这是火焰图的图像在此处输入图像描述

这是数据部分在此处输入图像描述

我是否理解我正在做的所有合并都是在我的应用程序中占用最多时间的事情?此外,在查看数据部分时,它说 profvis 行分配了 1251.1 MB 的内存。这是否意味着这是我的应用程序所需的内存总量?

标签: rshinyprofilingflamegraphprofvis

解决方案


推荐阅读