这是我的 Shiny 应用程序的源代码,当 UI 输入发生任何更改时,它会绘制台湾 350 多个城镇的多边形。城镇的价值每次都会根据投入而变化,因此几乎没有机会做leafletProxy
。然而,我现在遇到了性能问题,尤其是在 Shiny Server 上。
您可以尝试在本地运行该应用程序。在 UI 中更改选项后,地图将在 10 秒后显示。但是,在 Google Compute Engine或shinyapps.io上部署的应用程序需要更长的时间(大约 30 秒)来描绘地图,不仅在初始化应用程序时,而且每次更改输入时也是如此。此外,Shiny Server 在计算过程中经常断开连接,如下所示:
当断开连接发生时,/var/log/shiny-server.log
告诉我:
[INFO] shiny-server - 获取工作者时出错:错误:应用程序在初始化期间退出。
,这在本地从未发生过。
这对我来说没有任何意义。我的笔记本电脑怎么可能击败服务器?我的笔记本电脑是 MacBook Air(2015 年初),只有 1.6 GHz 英特尔酷睿 i5 和 8 GB 1600 MHz DDR3,而 Google Compute Engine 上的虚拟机即使有 4 个 vCPU 和 15 GB RAM,性能也很差。
我怎样才能找出 Shiny Server 性能变差的原因,或者重构我的代码?