b_user_session как почистить
При включении хранения сессий в БД, таблица быстро разрастается, если механизм очистки отключен в настройках php.
Есть возможность вручную почистить таблицу. Например с помощью метода:
\Bitrix\Main\Session\Handlers\Table\UserSessionTable::deleteOlderThan(86400);
Выполнив данный код, удалятся все сессии старше суток. Если сессий насохранялось очень много, то код будет выполняться долго.
Имеет смысл сделать бекап БД и почистить таблицу выполнив sql запрос.
Если у вас таблица постоянно растет и не очищается самостоятельно, проверьте настройки php, должно быть примерно так:
session.gc_probability = 1 session.gc_divisor = 1000 // шанс запуска сборщика "мусора", расчитывается как gc_probability/gc_divisor (1/1000 = 0.1%) session.gc_maxlifetime = 1440 // время жизни (24 минуты), после, сессия считается "мусором"
Есть вопросы или нашли ошибку? Напишите комментарий (можно без регистрации), отвечать стараюсь быстро.