Минимальный воспроизводимый пример:
library("shiny")
ui <- fluidPage(
actionButton("button1", "Run 1"),
actionButton("button2", "Run 2")
)
server <- function(session, input, output) {
cat("session starts\n")
observeEvent(input$button1, {
cat("1 starts\n")
Sys.sleep(15)
cat("1 stops\n")
})
observeEvent(input$button2, {
cat("2 starts\n")
Sys.sleep(15)
cat("2 stops\n")
})
}
shinyApp(ui = ui, server = server)
Каждая кнопка имитирует запуск какого-то длинного процессора с интенсивным использованием процессора.
- Запустите приложение и откройте сеанс на одной вкладке браузера.
- Откройте другую вкладку браузера с другим сеансом для запущенного приложения.
- Запустите Запустите 1 на первой вкладке. Go ко второй вкладке браузера и запустите Выполнить 2 .
Проблема: вторая кнопка обозревателя не запускается независимо. Он ожидает окончания первого запуска в первом сеансе. Я думал, что блестящие сессии независимы. Как Блестящий обрабатывает многократные блестящие сессии за одну сессию Что, если несколько пользователей хотят подключиться к приложению одновременно?
Как обрабатывать несколько пользователей, работающих с одним приложением одновременно? Спасибо