Что делать, когда побилась таблица сессий - знаю, не маленький.
Форум вырос, по 400 человек в онлайне. Радоваться бы надо, но.. с периодичностью в час - два, вылетает на.. фиг mysql со словами, то кол-во подключений к серверу больше max connections, то, что самое противное Ibf_sessons убился.
я уже своим модерам скрипт отдал, чтобы запускали repair ..
Но, вечно же так продолжаться не может?
Включил дебаг, полез разбираться.
Есть куча запросиков к таблице, к этой. Юзер, каждый раз к ней обращается, когда совершает ЛЮБОЕ действие. MySQL нифига не Oracle, он 400 обращений одновременно к одной таблице, да еще на апдейт пережить не может.
В связи с чем есть несколько вопросов:
1. Может нафиг убить гостей? Т.е. пусть они по форуму ходят, сообщения читают, но таблицу нашу драгоценную, сессий, не трогают, а? Кто - то пытался подобное сделать? Нет? Чего тут плохого? Я то сам, скорее всего сделаю, но хотелось бы гуру послушать, авось подскажут, что дурак и сюда нельзя ходить?
2. При входе на главную у нас сразу, практически
SELECT id, member_id, member_name, login_type, running_time, member_group FROM ibf_sessions WHERE running_time > 1168524585
А вот по этому полю, ключа то и нет. Пытался создать - не помогает, все равно explain пишет, что fullscan таблицы идет. Кто чего скажет? кто чего умного посоветует?
3. Есть такая штука полезная - кто и какой форум просматривает, типа location.. я его в админке отключил, т.е. показываться перестало - минус один запрос, но все равно, при переходах, эта тварь в таблицу то лезет и пишет - где я нахожусь.. Что тут поделать?
И вообще, по оптимизации, может кто еще чего подскажет? - топик про debug читал, все настроил, и сервак выделенный, и база только моя. И все равно, раз в сутки падения, раз в 2 дня перегруз mysql.
Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.
Вопрос
AirVit
Итак.
Что делать, когда побилась таблица сессий - знаю, не маленький.
Форум вырос, по 400 человек в онлайне. Радоваться бы надо, но.. с периодичностью в час - два, вылетает на.. фиг mysql со словами, то кол-во подключений к серверу больше max connections, то, что самое противное Ibf_sessons убился.
я уже своим модерам скрипт отдал, чтобы запускали repair ..
Но, вечно же так продолжаться не может?
Включил дебаг, полез разбираться.
Есть куча запросиков к таблице, к этой. Юзер, каждый раз к ней обращается, когда совершает ЛЮБОЕ действие. MySQL нифига не Oracle, он 400 обращений одновременно к одной таблице, да еще на апдейт пережить не может.
В связи с чем есть несколько вопросов:
1. Может нафиг убить гостей? Т.е. пусть они по форуму ходят, сообщения читают, но таблицу нашу драгоценную, сессий, не трогают, а? Кто - то пытался подобное сделать? Нет? Чего тут плохого? Я то сам, скорее всего сделаю, но хотелось бы гуру послушать, авось подскажут, что дурак и сюда нельзя ходить?
2. При входе на главную у нас сразу, практически
А вот по этому полю, ключа то и нет. Пытался создать - не помогает, все равно explain пишет, что fullscan таблицы идет. Кто чего скажет? кто чего умного посоветует?
3. Есть такая штука полезная - кто и какой форум просматривает, типа location.. я его в админке отключил, т.е. показываться перестало - минус один запрос, но все равно, при переходах, эта тварь в таблицу то лезет и пишет - где я нахожусь.. Что тут поделать?
И вообще, по оптимизации, может кто еще чего подскажет? - топик про debug читал, все настроил, и сервак выделенный, и база только моя. И все равно, раз в сутки падения, раз в 2 дня перегруз mysql.
Жуть как обидно.
Спасибо, ногами не бейте, а?
Ссылка на комментарий
Поделиться на других сайтах
10 ответов на этот вопрос
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.