Добрый день, Гость! Представляем Вам наши форумы. Вы можете зарегистрироваться чтобы писать на форумах или зайдите под своим именем, если Вы уже регистрировались.
   
   


Форум
 SX CMS / Техническая помощь
         Таблица sessions разрастается

Похожие темы

Таблица sessions разрастается


События Среда, 27.01.2016, 15:55

EVM

Группа: Пользователь
Ранг: Новичок
Cообщений: 42
Регистрация: 13.09.2014
Город: Кишинёв
Таблица sessions разрастается
Таблица sessions разрастается как чистить кроном или другим способом в 1.04

Пользователь офлайн
События Среда, 27.01.2016, 17:53

Axelaredz

Группа: Пользователь
Cообщений: 149
Регистрация: 26.08.2015
Город: Cочи
Очистка базы данных с помощью Cron

Настройки > Планировщик Cron

..ошибся) в Запланировано надо вписать дату в виде 28.01.2016
интервал в секундах, сам как то не пробывал, указал чтоб каждый день чистил, дабы подсмотреть за ним ^ ^

..но это справедливо для 1.05 Извини

Отредактировано Александр Vampireos (mrX): 27.01.2016, 17:54:36
Пользователь офлайн
События Среда, 27.01.2016, 18:41

EVM

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 42
Регистрация: 13.09.2014
Город: Кишинёв
За очистку реферов отвечает таблица sys_counter_referer, а у меня разрастается sessions.
Пользователь офлайн
События Среда, 27.01.2016, 18:56

SX

Группа: Администратор
Cообщений: 3016
Регистрация: 23.10.2009
Таблица sessions разрастается
Цитата
Автор: EVM
Таблица sessions разрастается как чистить кроном или другим способом в 1.04


Для начала не плохо бы убедиться что сессии в таблице истекшие по времени или может слишком большое время хранения в настройках задали.
В начальных версиях 1.04 похожая проблема была, покажите class.Session.php


Пользователь офлайн
События Среда, 27.01.2016, 19:27

EVM

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 42
Регистрация: 13.09.2014
Город: Кишинёв
В настройках не нашёл, файл прикрепил.
Вложения
class.session.php.txt   (1 x загружено | 3,2 Кб)   
Пользователь офлайн
События Среда, 27.01.2016, 20:27

SX

Группа: Администратор
Cообщений: 3016
Регистрация: 23.10.2009
Цитата
Автор: EVM
В настройках не нашёл, файл прикрепил.


Странно файл уже правленый. Возможно тормозит или отключен уборщик сессий сервера.

Ну можно в __construct() этого файла
после
PHP-код
$this->_DB DB::getDB();

добавить
PHP-код
if (mt_rand(1100) <= 3) {
    
$this->Gc();
}


Это аналог встроенного уборщика php
100 можно изменять, уменьшать для увеличения вероятности срабатывания


Пользователь офлайн
События Среда, 27.01.2016, 23:28

EVM

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 42
Регистрация: 13.09.2014
Город: Кишинёв
Пробовал разные значения от 100 до 3, всё равно растёт)
Пользователь офлайн
События Четверг, 28.01.2016, 01:06

SX

Группа: Администратор
Cообщений: 3016
Регистрация: 23.10.2009
Цитата
Автор: EVM
Пробовал разные значения от 100 до 3, всё равно растёт)


Ну тогда вам остается лишь садиться и листать логи mysql, что то блокирует таблицу и это на уровне сервера


Пользователь офлайн
События Четверг, 28.01.2016, 06:36

EVM

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 42
Регистрация: 13.09.2014
Город: Кишинёв
Сейчас в логах ошибок с этой таблицей нет.
Пару месяцев таблица session очень разрасталась, мускул не мог обработать таблицу из-за размера, стали долго обрабатываться запросы, что в свою очередь за 5 минут увеличивало файл логов на гигобайты, на винте заканчивалось место и сервер зависал)
Пользователь офлайн
События Пятница, 29.01.2016, 06:16

SX

Группа: Администратор
Cообщений: 3016
Регистрация: 23.10.2009
Цитата
Автор: EVM
Сейчас в логах ошибок с этой таблицей нет.
Пару месяцев таблица session очень разрасталась, мускул не мог обработать таблицу из-за размера, стали долго обрабатываться запросы, что в свою очередь за 5 минут увеличивало файл логов на гигобайты, на винте заканчивалось место и сервер зависал)


Вручную удалить содержимое таблицы получается? Через PMA на пример?


Пользователь офлайн
События Пятница, 29.01.2016, 10:06

EVM

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 42
Регистрация: 13.09.2014
Город: Кишинёв
В течение дня несколько раз удаляю в ручную из мускула, хотелось бы автоматизировать, типо крона с очисткой реферов.
Пользователь офлайн
События Пятница, 29.01.2016, 13:17

SX

Группа: Администратор
Cообщений: 3016
Регистрация: 23.10.2009
Цитата
Автор: EVM
В течение дня несколько раз удаляю в ручную из мускула, хотелось бы автоматизировать, типо крона с очисткой реферов.


В 1.04 нет возможности вызвать любой метод любого класса с помощью планировщика, нужно писать отдельный метод, ну или смотреть как в 1.05 сделано


Пользователь офлайн
События Пятница, 29.01.2016, 14:10

EVM

Автор текущей темы
Группа: Пользователь
Ранг: Новичок
Cообщений: 42
Регистрация: 13.09.2014
Город: Кишинёв
А если изменить

if (mt_rand(1, 100) <= 3) {
$this->Gc();
}

на

if (mt_rand(1, 100) <= 3) {
$sql = "TRUNCATE TABLE `sys_sessions`";

}

Добавлено Ефимов Михаил (EVM): 29.01.2016, 14:10:07
А где посмотреть время жизни сессии и какое значение должно быть?

Отредактировано Ефимов Михаил (EVM): 29.01.2016, 14:34:37
Пользователь офлайн
События Пятница, 29.01.2016, 20:08

SX

Группа: Администратор
Cообщений: 3016
Регистрация: 23.10.2009
Цитата
Автор: EVM
А если изменить

if (mt_rand(1, 100) <= 3) {
$this->Gc();
}

на

if (mt_rand(1, 100) <= 3) {
$sql = "TRUNCATE TABLE `sys_sessions`";

}

Добавлено Ефимов Михаил (EVM): 29.01.2016, 14:10:07
А где посмотреть время жизни сессии и какое значение должно быть?

Отредактировано Ефимов Михаил (EVM): 29.01.2016, 14:34:37


Сессии должны удаляться истекшие по времени, а так будет разавторизация всех подряд. Время сессии в конфиг файле выставлено, комментарий там есть.


Благодарности EVM
Пользователь офлайн


Похожие темы  |   Предыдущая тема  |   Следующая тема

Быстрый переход:  
 

 Сейчас на сайте

Пользователей: 0, Гостей: 3

Поисковые боты: 170
Bot(152), oBot(4), Crawler, BingBot(3), Mail.Ru Bot(6), Yandex(3), Googlebot
 Статистика форума

  Темы Сообщения Пользователи
За сутки:
За неделю:
За месяц:
Всего:
Мы приветствуем нового участника: dota812651
 Дни рождения

Forelist (69)
Copyright © 2009 - 2024 SX All rights reserved | Powered by SX CMS 1.06 UTF | Контакты