R Shinyapps 高级设置

rmf*_*rmf 5 r shiny shiny-server

在此处输入图片说明

这是 Shinyapps.io 设置的屏幕截图。有人可以解释一下这些东西是什么以及它们之间的关系吗?在设置区域和闪亮的服务器管理指南中有一个有限的单行定义,它没有解释太多。

  1. 首先,什么是实例、工作线程和进程?
  2. 三种不同的超时时间有什么区别:“实例空闲超时”、“连接超时”和“空闲超时”?
  3. 这与可用内核的数量有什么关系?我怎么知道有多少内核可用?
  4. 如果可用,我的应用程序是否使用多个内核?
  5. 我必须明确地对多核的使用进行编程还是闪亮的自动分配任务?

ess*_*ess 2

Shiny 对这里的概念有很好的概述。部分解决设置的作用:

\n
\n

调整参数

\n

上述架构使用两个负载因子来微调应用程序的性能。

\n

工作线程负载因子\xe2\x80\x93 新浏览器连接将触发添加新工作线程的阈值百分比。

\n

实例负载因子\xe2\x80\x93 新连接将触发添加新应用程序实例的阈值百分比(仅限于最大实例限制,免费层为 1)

\n

每个负载因子都基于阈值百分比的概念,即在shinyapps.io 启动另一个工作程序或应用程序实例之前允许打开的可用连接或进程的百分比。这两种设置都可以在给定应用程序的“设置”页面的“高级”选项卡中进行配置。

\n
\n

...并在一定程度上解决了闪亮应用程序的工作原理:

\n
\n
    \n
  1. 发布者创建一个新应用程序并将其部署到shinyapps.io,网址为:https://{someaccount}.shinyapps.io/{appname}
  2. \n
  3. 来自最终用户的请求触发应用程序实例的启动
  4. \n
  5. 应用程序实例将由至少一名工作人员启动
  6. \n
  7. 随着更多最终用户访问应用程序,与工作线程的连接数量也会增加。当超过工作线程负载系数阈值时,只要尚未达到每个应用程序实例的最大工作线程数,shinyapps.io 就会添加另一个工作线程。新连接现在已分配给新工作人员。
  8. \n
  9. 当新用户继续访问该应用程序时,会在需要时添加新的工作人员。当超过实例负载因子时,只要尚未达到应用程序实例的最大数量(最大数量可能是1),shinyapps.io就会触发添加另一个应用程序实例。
  10. \n
  11. 当最终用户关闭浏览器或空闲时间超过空闲超时时,Shinyapps.io 会关闭连接。
  12. \n
  13. 一旦没有进一步的连接打开,Shinyapps.io 就会关闭每个工作线程。
  14. \n
  15. 一旦没有正在运行的工作线程,或其工作线程空闲时间超过实例空闲超时,Shinyapps.io 就会关闭每个应用程序实例。如果您想避免重新启动应用程序,则应增加此阈值超时。注意:增加超时将消耗更多的活动时间。
  16. \n
  17. 来自最终用户的新请求会导致shinyapps.io 打开应用程序实例,并重复第 2-9 阶段。
  18. \n
\n
\n

从这些中你也许能够拼凑出你需要的东西。除此之外,我建议在 StackOverflow 上单独询问具体问题,因为这样更有可能得到回答。

\n