Shiny 错误:应用程序响应时间过长

Shiny 错误:应用程序响应时间过长,shiny,shiny-server,Shiny,Shiny Server,我有一个闪亮的服务器(1.3.0.403)运行在Red Hat Enterprise Linux server 6.5版(圣地亚哥)上,运行在虚拟机中 一些应用程序在启动时失败,并注明“应用程序启动失败。应用程序响应时间太长”。重新启动闪亮服务器可使应用程序正常工作,直到问题再次出现(在一天内) 其他应用程序也可以。示例应用程序可以正常工作 我们有几个不同的目录和不同的应用程序。比如说, ├── shiny-server │   ├── apps │   ├── sample-apps │  

我有一个闪亮的服务器(1.3.0.403)运行在Red Hat Enterprise Linux server 6.5版(圣地亚哥)上,运行在虚拟机中

一些应用程序在启动时失败,并注明“应用程序启动失败。应用程序响应时间太长”。重新启动闪亮服务器可使应用程序正常工作,直到问题再次出现(在一天内)

其他应用程序也可以。示例应用程序可以正常工作

我们有几个不同的目录和不同的应用程序。比如说,

├── shiny-server │   ├── apps │   ├── sample-apps │   └── tutorials ├── 闪亮服务器 │   ├── 应用程序 │   ├── 示例应用程序 │   └── 教程 奇怪的是,应用程序路径似乎是个问题。例如,如果我将
示例应用程序/hello
复制到
应用程序/hello
中,我会在相同的应用程序代码中遇到相同的超时问题(而它在原始路径中工作)

我见过,但示例应用程序非常轻量级,加快应用程序的启动似乎不是解决方案

谢谢


马克斯

这件事在我身上发生过几次。如果希望在
shinny server.conf
文件中为应用程序设置5分钟(300秒),则需要通过将超时设置为类似(
app\u init\u timeout 300;
)的值来增加应用程序初始化的时间。文档位于

下面是一个示例
/etc/shinny server/shinny server.conf

# Tell Shiny Server that we want to run as the user whose 
# home directory we find the application in.
run_as :HOME_USER:;
app_init_timeout 300;
app_idle_timeout 300;

# Define a server that listens of port 3838.
server {
  listen 3838;

  # Define a location at the base URL
  location / {

    # Allow users to host their own apps in ~/ShinyApps
    user_dirs;

    # Optionally, you can restrict the privilege of hosting Shiny applications
    # only to members of a particular Linux group.
    # members_of shinyUsers;
  }
}
接下来,我通过将数据保存/加载为
.RData
文件来加快应用程序的启动速度:

# Save everything in an R Workspace
save.image(file="shiny.RData")

# Load (e.g. in global.R)
load("/PATH/TO/shiny.RData")

[如果您不想/不需要保存整个R工作区,
save(object1,object2,…,file=“shinny.RData”)
]

过了多久您会看到错误消息(“应用程序启动失败。应用程序花了太长时间才响应”)?对我来说,这听起来像是服务器没有足够的电源支持这些应用程序,过了一段时间之后(当你的内存被填满时)服务器速度太慢,你超过了某个阈值。那么这个服务器有超时阈值吗?这很明显,所以我想你已经检查过了,但这只是我脑海中的想法。