R memoise на сервере Linux
Я тестирую Memoise для кеширования большого фрейма данных в блестящем приложении R. Он отлично работает на моем локальном компьютере с Windows, но как только я развертываю код на сервере Linux, мне почему-то кажется, что Memoise ничего не делает, и каждый раз, когда я пытаюсь вызвать функцию Memoise, она загружается вечно. Отсюда мой вопрос: есть ли конкретный параметр, который мне нужно изменить, чтобы эффективно работать на сервере Linux? Пример кода (реальный код загружает фрейм данных из базы данных и обрабатывает данные):
ui <- dashboardPage( # https://rstudio.github.io/shinydashboard/structure.html
title = "Dashboard",
dashboardHeader(title = "Angelo's Board"),
dashboardSidebar( # inside here everything that is displayed on the left hand side
includeCSS("www/styles.css"),
sidebarMenu(
menuItem('menu 1', tabName = "menu1", icon = icon("th"),
menuItem('Data 1', tabName = 'tab_data1'))
)),
dashboardBody(
tabItems(
tabItem(tabName = 'tab_data1')),
h3("Page with big table"),
fluidRow(dataTableOutput("main_table"))
))
server <- function(input, output, session) {
func_create_df <- function(){
df <- data.frame(names = c("Mark","George","Mary"), age = c(30,40,35))
df
}
func_create_df_mem <- memoise(func_create_df, ~timeout(1))
output$main_tabl <- renderDataTable({
df <- func_create_df_mem()
})
}
cat("\nLaunching 'shinyApp' ....")
shinyApp(ui, server)
В качестве побочного, менее важного вопроса, похоже, что функция тайм-аута, описанная здесь ( https://blog.rstudio.com/2016/02/02/memoise-1-0-0/), также ничего не делает.