You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shiny Server部署的Shiny应用远慢于本地,求排查与优化方法

我的Shiny应用性能优化求助

我最近开发了一个Shiny应用,核心功能是根据UI输入的变化绘制台湾350余个乡镇的多边形,应用的源代码在我的GitHub仓库的app.R文件中。由于每次UI输入变化后,乡镇对应的数值都会发生改变,几乎没办法使用leafletProxy来做局部更新,现在我遇到了棘手的性能问题,尤其是部署到Shiny Server之后,情况比本地运行糟糕很多。

具体问题表现

  • 本地运行时:修改UI选项后,地图大概10秒就能加载完成,体验还算顺畅。
  • 部署到服务器后:不管是应用初始化,还是每次更改输入参数,绘制地图都需要约30秒,耗时远超本地环境;而且Shiny Server在计算过程中还频繁断开连接,界面会显示类似这样的断开提示:
    App disconnected
  • 断开连接时,查看/var/log/shiny-server.log会看到如下日志:

[INFO] shiny-server - Error getting worker: Error: The application exited during initialization.

我的困惑

让我百思不得其解的是,我的2015年初款MacBook Air配置明明更低(1.6 GHz Intel Core i5、8 GB 1600 MHz DDR3),但运行应用的性能反而优于拥有4 vCPU和15 GB RAM的Google Compute Engine虚拟机,这到底是为什么?

求助方向

我想请教各位:

  • 该如何排查Shiny Server性能变差的原因?
  • 有没有合适的代码重构思路来优化这个应用的性能?

之前我也参考过Stack Overflow上关于Leaflet R大地图性能问题的讨论,但还是没能解决我的问题。


内容的提问来源于stack exchange,提问作者ytu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:32:07