r - 如何防止我的 Shiny App 在开源闪亮服务器中断开连接?
问题描述
我正在使用 Ubuntu 和 NGINX 在开源闪亮服务器上运行 R 闪亮应用程序。但是,由于某种原因,我的应用程序不断收到“与服务器断开连接”的消息,我似乎无法让它工作。闪亮的应用程序在我的本地运行得非常好。
我已经通过Shiny server session time out not work中的以下建议尝试了 javascript 解决方法,但它似乎仍然不起作用。
还尝试将app_idle_timeout和app_init_timeout设置为更长的持续时间,但无济于事。
这是我的 nginx 配置文件:
server {
listen 80;
listen [::]:80;
listen 443 ssl;
server_name some_ip_address;
location / {
proxy_pass http://localhost:3838/;
proxy_redirect http://localhost:3838/ $scheme://$host/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 20d;
}
}
想知道我是否编辑闪亮的服务器或 nginx 配置文件来完成这项工作?但我知道只能在专业版中延长超时时间,但我猜必须有一些解决方法。
解决方案
app_idle_timeout
您可以通过在 Shiny Server 配置文件中设置为 0 来禁用 Shiny Server(开源或 Pro)中的应用程序空闲超时。
例如,
location / {
app_idle_timeout 0;
}
https://docs.rstudio.com/shiny-server/#application-timeouts
app_idle_timeout -- 定义没有活动连接的 R 进程应该保持打开的时间量(以秒为单位)。在最后一个连接与 R 进程断开连接后,此计时器将启动,并且在指定的秒数后,如果没有创建新连接,则 R 进程将被终止。app_idle_timeout 的默认值为 5 秒。
推荐阅读
- amazon-web-services - 如何在 yml 中正确使用 CloudFormation 的内在函数
- telegram - 在电报中将简单文本应用于图片 API
- excel - 复制并粘贴一个单元格,以便在 vlookup 后数据不会更改
- typescript - 打字稿:函数应该返回泛型类型的值
- python - wtforms 表单字段是类对象还是函数?
- node.js - 错误:找不到模块“@babel/runtime/regenerator”
- c# - .NET Core 3.1 控制台应用程序无法在 Windows 7 上运行
- node.js - 带有express的NodeJS:res.get()总是返回未定义的
- flutter - 无法从颤振中的模型类获取数据
- python - 如何将数据框转换为列表