Приложение My Rails (3) использует AJAX для загрузки нескольких портлетов на приборной панели. Пользователь должен пройти аутентификацию, чтобы иметь возможность просматривать панель управления. Таким образом, user_id, хранящийся в сеансе, важен. Я использую хранилище сеансов ActiveRecord по умолчанию.Почему Rails сохраняет сеанс, даже если никаких изменений не было?
После завершения GET '/ dashboard, несколько XHR GET запрашивают огонь (и обрабатываются параллельно b/c балансировки нагрузки). Эти запросы никак не изменяют сеанс, они просто извлекают user_id из сеанса.
По-прежнему это приводит к UPDATE 'sessions' ... where 'session.id' = ...
для каждого запроса XHR. Вызов блокировки строк в первом запросе XHR, поэтому следующие запросы XHR зависают до тех пор, пока блокировка не будет отпущена.
Есть ли причина, по которой Rails должен сохранить сеанс снова в базе данных, даже если никаких изменений не было?