2015-08-18 2 views
0

В настоящее время я работаю над одним проектом, который использует R для выполнения очень сложного расчета, который он называет веб-приложением ASP.NET. Он использует RServe как интерфейс для R и должен также использовать библиотеки ROracle и DBI.Running Rserve as service

Теперь проблема заключается в том, что каждый раз, когда сервер перезапускается, я должен войти на сервер для запуска команды Rserve вручную, возникает вопрос: есть ли способ автоматически запускать RServe каждый раз при перезапуске сервера. Я запускаю его на окнах.

Большое спасибо.

ответ

0

Как публичная документация Rserve говорит, вы можете запустить 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. 

Вы можете создать сценарий оболочки (или сценарий Windows) и сообщите ОС, чтобы выполнить этот скрипт во время процесса запуска.