R:在部署的ShinyApp中仅加载一次.RData

JPL*_*JPL 5 r loading rdata shiny

我需要使用Shiny Server部署ShinyApp .要运行,我的应用程序需要来自.RData文件的数据(~300 Mo).该.RData文件加载了一个load(...)位于global.R文件中的语句.计算机的功能,加载可能需要几分钟,对用户不友好.

我们怎样才能使.RDate文件只加载一次,以便每个新用户不需要重新加载.RData文件?

谢谢.

nic*_*ola 2

如果您将对象加载到 中global.R,那么只需加载一次即可。第一个用户之后的每个用户都应该能够快速访问您的应用程序。

如果您在本地开发应用程序,则可以通过以下方式测试我所说的内容。例如,启动您的应用程序:

 runApp(port=5050)
Run Code Online (Sandbox Code Playgroud)

只是为了设置端口。您的浏览器需要一些时间来显示该应用程序。加载后,记下应用程序的地址(应该是127.0.0.1:5050),关闭应用程序的浏览器选项卡(但不要停止 R!),打开一个新选项卡并将上述地址放入地址栏中。现在,访问您的应用程序应该非常快。

这只是说,只要shiny启动并运行,中的命令global.R就会在开始时执行,并将它们的评估放入R全局环境中。当用户连接到应用程序时,它们不会被执行。

Rdata还要考虑一下,如果使用参数保存an ,则可以加快其加载速度compress=FALSE。这样,你的文件会更大,但加载速度会更快。