Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rserve - Multiple instances on one server?

Tags:

r

rserve

Is it possible to run multiple instances of Rserve on one server at the same time?

For example 10 instances meaning 10 separate R workspaces listening on different ports via Rserve on the same machine?

like image 598
Dirk Calloway Avatar asked Dec 25 '22 14:12

Dirk Calloway


2 Answers

In the same document specified by @Oleksandr, it clearly states on page 5-6, that in Windows, there is an alternative solution:

Don't run 1 Rserve process, but start multiple Rserve processes, each on a different port (which can be easily specified in the rserve command). Each Rserve process has its own environement. Connect 1 thread of your application with 1 unique Rserve connection: Then you can exploit parallellism from within your application.

So the answer to your question is: Yes, you can.

I've tested this with a C# application, and it works. You can use libraries like this: https://github.com/kent37/RserveCLI2

EDIT August 4 2015: We are now effectively using this in a (windows) production application, namely calling the R code from a C# codebase do to the statistical analysis. We use RServe and RServeCLI for connecting and communication between the 2 codebases. To implement this in a structured manner, we used this pattern for pooled resources. Hope this helps.

like image 139
Andries Avatar answered Jan 07 '23 02:01

Andries


Answer is yes, if it is Unix/Linux. Answer is no, if it is Windows. More can be found here http://www.ci.tuwien.ac.at/Conferences/DSC-2003/Proceedings/Urbanek.pdf, page 2 says it explicitly.

like image 31
Oleksandr Avatar answered Jan 07 '23 02:01

Oleksandr