Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does R-Server or Shiny Server create a new R process/instance for each user?

Tags:

I'm considering different solutions for creating a Web application that shows some data analytics to the user. I want to use R with shiny server but I'm not certain how it is gonna scale for large number of users. Questions:

  1. Can shiny server support 100 or 1000 or in even the extreme case of 10000 simultaneous users? In other words how well does shiny server scale with the number of users?
  2. Does shiny server create a new instance of R for each user or do the users share one R instance?
like image 814
user2840286 Avatar asked Oct 28 '13 04:10

user2840286


People also ask

How does R Shiny server work?

Shiny Server is an open source back end program that makes a big difference. It builds a web server specifically designed to host Shiny apps. With Shiny Server you can host your apps in a controlled environment, like inside your organization, so your Shiny app (and whatever data it needs) will never leave your control.

What is the difference between R and R Shiny?

Shiny is an R package that makes it easy to build interactive web apps straight from R. You can host standalone apps on a webpage or embed them in R Markdown documents or build dashboards. You can also extend your Shiny apps with CSS themes, htmlwidgets, and JavaScript actions.

Is R Shiny difficult?

Along with Shiny elements, you can use HTML elements to stylize your content in your application. In my opinion, R Shiny is very easy to learn despite how powerful the tool is. If you're working on a side project or looking to add something to your portfolio, I highly recommend trying it out.

How much does an R Shiny server cost?

We recommend these to our clients, as we believe them to be the best option. You can go either with RStudio Shiny Server Pro and which costs $11,950/year for 20 concurrent users or R Studio Connect for $14,995/year.


1 Answers

Great questions. (Bias: I'm one of the developers behind Shiny Server.)

Regarding your second question, in the open source Shiny Server, one R process is created for every Shiny application you deploy, regardless of the number of concurrent users. We now offer Shiny Server Professional which offers, among other things, the ability to support an application with multiple R processes and configure exactly how you want this to scale.

Regarding your first question, Shiny Server certainly can do these things, but you'll find that the limitation is in your Shiny apps. We've seen the simplest apps seamlessly support hundreds of concurrent users on a single Shiny process (doable in the open source version). Most apps of substance, however, would require more processes to create a seamless experience once you get into hundreds or thousands of concurrent users. With Shiny Server Pro, you'll be able to scale that as far as your server's resources allow you to.

like image 85
Jeff Allen Avatar answered Oct 08 '22 19:10

Jeff Allen