什么是SockJSAdapter以及为什么它不断运行

时间:2018-10-08 11:52:23

标签: r shiny shiny-server

我有一个Shiny-app托管在Ubuntu中,附件是正在运行的进程的当前快照 enter image description here 如您所见,与Shiny服务器相关的名为SockJSAdapter的东西正在消耗大量内存。我已经注意到,当我在浏览器中运行我的应用程序时,此过程开始,并且即使我在浏览器中关闭该应用程序后,该过程仍保持运行。

有人可以进一步说明这个过程是什么,为什么即使我关闭该应用程序后它仍然可以运行?我需要在Shiny-app (ui.R or server.R)中做些什么,以便在用户关闭应用程序后立即终止该过程吗?

我正在使用的发光服务器版本:

apt-cache showpkg shiny-server
Package: shiny-server
Versions:
1.5.6.875 (/var/lib/dpkg/status)
 Description Language:
                 File: /var/lib/dpkg/status
                  MD5: 5692122708280493808d4d49f42a0475


Reverse Depends:
Dependencies:
1.5.6.875 - libc6 (2 2.7) r-base (2 2.15.1)
Provides:
1.5.6.875 -
Reverse Provides:

感谢任何指针。

1 个答案:

答案 0 :(得分:1)

我可以在此shiny-server issue中找到有关此问题的一些信息。我无法解析与代理使用和闪亮服务器有关的注释。我也对Web套接字一无所知,我猜SockJS是专为处理而设计的。我可以使用pkill -f SockJSAdapter.R安全地杀死所有悬空的sockjsadapter.R进程,然后重新启动闪亮服务器。

我很想知道一种确保用户每次关闭闪亮的应用程序时不会再次发生这些僵尸进程的方法。