0

刚刚结束模块化我闪亮的应用程序,但我有一个问题:我的应用程序整天运行,一些用户通过网络浏览器来查阅它。我创建了一个模块来读取 csv,并通过响应计时器每 30 分钟调用一次该模块。问题是 callmodule 在服务器内,每个新会话都会触发我的模块并重新读取数据。在模块化之前,我将所有 read.csv 都放在服务器之外,如下所示: https ://shiny.rstudio.com/articles/scoping.html

refreshTimer <- reactiveTimer(1800000)#1800000ms pour 30min; timer pour relancer une importation

######### serveur #######  
  
shinyServer(function(input, output,session) {
  observe({ 
    refreshTimer()
    r$data<-callModule(module = module_import_CSV_30min, id = "module_import_CSV_30min")
  })

整夜寻找解决方案,但没有找到。有什么假设吗?谢谢

4

1 回答 1

0

嗨最后我找到了“解决方案”。事实上,我们不能使用模块为所有会话导入数据。我们必须在 server.R 上(在闪亮服务器之外)将它变成一个 global.R。因为模块只能调用到 shinyserver 并且每个新会话都会再调用一次该模块。感谢帮助。

于 2021-05-06T21:45:49.737 回答