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