我需要使用Shiny Server部署ShinyApp。要运行,我的应用需要来自.RData
文件(~300 Mo)的数据。此.RData
文件加载了位于load(...)
文件中的global.R
语句。
计算机的功能,加载可能需要几分钟,对用户不友好。
我们如何才能使.RDate
文件只加载一次,以便每个新用户都不需要重新加载.RData
文件?
感谢。
答案 0 :(得分:2)
如果您在 runApp(port=5050)
中加载对象,那么只需加载一次。第一个用户之后的每个用户都应该可以快速访问您的应用程序。
如果您在本地开发应用程序,可以通过以下方式测试我所说的内容。例如,使用
启动您的应用程序127.0.0.1:5050
只是设置端口。您的浏览器需要一些时间来显示应用程序。加载后,请记下您应用的地址(应为global.R
),关闭应用的浏览器标签(但不要停止R!),打开新标签并将上述地址放在地址中酒吧。现在,访问您的应用应该非常快。
这只是说,只要闪亮启动并运行,Rdata
中的命令就会在开始时执行,并且它们的评估将放在R全局环境中。用户连接到应用程序时,不会执行它们。
如果使用compress=FALSE
参数保存,可以考虑加快true
的加载速度。这样,您的文件会更大,但加载它会更快。