我目前正在开发一个使用R进行非常复杂的计算的项目,它设置为由ASP.NET Web应用程序调用。它使用RServe作为R的接口,也需要使用ROracle和DBI库。
现在问题是每次服务器重新启动时,我都必须登录服务器手动启动Rserve命令,问题是:每次服务器重启时有没有办法自动运行RServe。我在Windows上运行它。
非常感谢。
答案 0 :(得分:0)
正如Rserve的公共文档所述,您可以从shell脚本启动Rserve。
只需创建一个执行以下命令的脚本:
echo 'library(Rserve);Rserve(FALSE,args="--no-save --slave --RS-conf <your_own_path>/rserve.conf")'|<R_bin_path>/R --no-save --slave
例如,在我的MacOS计算机中,我可以启动Rserve执行此行:
/bin/sh -c "echo 'library(Rserve);Rserve(FALSE,args=\"--slave\")'|/Library/Frameworks/R.framework/Versions/3.2/Resources/bin/exec/R --no-save --slave"
此命令输出如下内容:
Starting Rserve:
/Library/Frameworks/R.framework/Resources/bin/R CMD /Library/Frameworks/R.framework/Versions/3.2/Resources/library/Rserve/libs//Rserve --slave
Rserv started in daemon mode.
您可以创建一个shell脚本(或Windows脚本),并告诉操作系统在启动过程中执行此脚本。