Query Blocking Between Containers in ShinyProxy on AWS

Hi all,

I am trying to host my ShinyProxy application on an AWS EC2 instance running Amazon Linux 2023. Say, I have two different Docker images, each containing an R Shiny app that connects to the same SQL Server database. Both images have the R Shiny app copied to the root of the image.

When I run both containers in interactive mode (docker exec -it) and manually execute the same SQL script inside each, the SELECT queries run simultaneously and I can see outputs from both containers at the same time.

However, when I launch the applications via ShinyProxy and access them through the browser, if I run a query in one application, it blocks the data retrieval in the other. All queries are read-only — there are no INSERT, UPDATE, or DELETE operations involved.

Why is this happening? How can I prevent one ShinyProxy application from blocking the other?

Thanks in advance!

Hi

ShinyProxy only runs the docker container, and therefore does not do anything w.r.t to the database connection.
However, please be aware, that when you open (as a single user), the same app multiple times, you will be using a single container. If the R code is written such that it blocks when executing a SQL query, the code will block for all these tabs.
If this is the problem you are having, you could update the R code to not block. A simpler approach is to run multiple containers, see User Interface | ShinyProxy