Disclaimer: I've never used Shiny. I started reading about it because of this question, and couldn't stop. Here are some impressions I took away from that reading:
Can I do the things I do with a web server like Apache also do on a
shiny server?
If you mean just serving static assets (html, css, js, img, etc.), like Apache's httpd
, it looks like the answer is yes. From the administrator's guide:
Each server can have locations that are capable of serving Shiny
Applications and static assets, as well.
Is the shiny server simply a web server with some additional features
necessary to host shiny apps?
More or less. A Shiny server can be thought of as a box, with several ports (probably including 443/80) exposed, that runs the Shiny binaries and has an R runtime. This is essentially the scaffolding and glue that bridges the gap between your R code and the browser.
It also exposes an administrative web interface for interacting with the server. And for Pro users, it has niceties like easy LDAP integration.
How do a "traditional" web server and a shiny server differ?
First glance indicates that you'd probably configure the httpd
type stuff in Shiny's configuration file (shiny-server.conf
rather than httpd.conf
). I didn't see anything to indicate you needed to bring your own web server, so I'd guess that piece is provided by the Shiny binaries themselves.
You can of course, run any number of things alongside Shiny on this box, until you run out of RAM or ports.