Перейти к публикации

freakenergy

новички
  • Публикации

    36
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные пользователем freakenergy

  1. Здравствуйте, поступила жалоба от хостера:

    у вас очень часто сыпит неоптимальный запрос к базе вида:

    SELECT autor FROM srv11886_comments WHERE date LIKE '%2009-01-%' AND

    approve='1' AND autor != 'nick1' AND autor != 'nick 2';

    замените LIKE на нормальную функцию даты, а то вы дату превращете в строку и

    только потом сравнение идет!!! Это не приемлемо!!!

    Подскажите как решить?

    Сайт: freakenergy.ru

    лицензия.

  2. Подскажите как перенести поле ввода тегов с вкладки "Дополнительно" на вкладку "Новость" под поле ввода заголовка новости, либо под выбор категории.

    И еще хотел бы узнать как добавить поле ввода тегов в addnews.html , т.е. на страницу добавления новости не в админ панели.

    сайт: www.freakenergy.ru

    лицензия

  3. Здравствуйте, хотел бы заказать модуль/хак, в котором пользователю при регистрации (обязательно) предлагалось выбрать свой город (Москва - Санкт-Петербург - Другой.), для пользователей которые уже зарегестрированы и не выбрали город, на главной выводилось сообщение (Внимание, вы не указали свой город).

    Так же в рассылке через админку по ПМ была привязка к городу, т.е. рассылка производилась только тем пользователям, проживают в городе, который я укажу.

    Город юзер выбирает в своем профиле. Пока что требуется только два города (Москва - Петербург, для остальных указывается - Другой), но желательно чтобы через админку легко можно было добавить и другой город.

    Также есть модуль, помоему ГеоЛокатор, выводящий Страну и Город в котором находится юзер, если можно реализовать то что я просил выше через этот модуль, то этот вариант более предпочтителен для меня, т.е. тут уже не нужно будет заставлять юзера выбирать свой город, но как мне кажется это более тяжеловесный вариант ... надеюсь все понятно.

    За деньги.

    Сайт - http://www.freakenergy.ru/

    Движок - Лицензия

  4. Мой ответ им:

    ===============

    Цитата *

    Т.е. эта проблема со стороны хостера?

    ---

    думаю да, если была посещаемость больше и все работало, и вы не вносили никаких

    изменений в скрипт, ничего не происходит просто так, небывает так что работало и

    просто вдруг перестало, либо изменили что либо в скрипте, либо на сервере,

    поэтому если вы ничего не делали то, значит внесли изменения на сервере,

    например сменили ПО.

    ---

    Никаких изменений один-три дня назад на сайте не было, и сегодня мы обновили

    движок до последней версии, т.е. он практически голый без сторонних модулей.

    Ответ поддержки:

    Доброго времени суток !

    Мы никакое ПО не меняли. Судя по тому, что мы видели, проблемы возникают в базе

    данных. По всей вероятности, либо там что-то случилось с данными, и теперь часть

    запросов выполняется крайне медленно, либо она достигла таких объёмов, что нужно

    что-то переделывать в её архитектуре. В любом случае, всё это поддаётся анализу.

    Проанализируйте проблнемные запросы с помощью команды EXPLAIN в MySQL - будет

    видно, где происходит затык. Варианты запросов мы вам приводили.

    Главное, что сегодня в 8 утра все стало нормально, сайт работает в обычном режиме, ничего не тормозит, хотя никто никаких изменений не вносил (судя по словам тех. поддержки). Видимо кто-то что-то умалчивает, либо все само восстановилось =) Сплошные загадки )

    Хостинг: http://www.ht-systems.ru/ (не сочтите за рекламу)

  5. Al-x,

    ну поддержка адекватна была, сидели и добросовестно переписывали нам запросы, старались помочь, оперативно отвечали... вообще отличный хостинг, но вот эта ситуация очень смущает, тем более если это окажется с их стороны (на что я очень сильно надеюсь) и они не смогли это понять за такое продолжительное время.

  6. Здраствуйте, на сайте два дня назад начался постоянный перегруз. Всегда пишет User srv11886_freake already has more than 'max_user_connections' active connections либо просто не грузится и выдает Время истекло.

    Не знаю после чего это началось, сторонних модулей на сайте практически нет, стоит только блок Топа юзеров, который кешируется и интеграция с форумом SMF (но база форума находится на другом аккаунте, т.е. не создает нагрузки).

    Уже не знаю что еще можно сделать. Даже когда сайт выключали на тех обслуживание, т.е. он был доступен только админам, был перегруз.

    На хостинге у нас дорогой тариф, да и посещаемость не такая большая (5 тысяч).

    Сайт: http://www.freakenergy.ru/

    Целый день мучались с тех поддержкой хостинга, они также не смогли ничем помочь, изменили в engine.php запросы с :

    Это версия движка была 7.0, сегодня обновились до 7.2, проблемма не исчезла.

    Нами была проанализирована проблема.

    Запросы вида

    SELECT SQL_CALC_FOUND_ROWS id, autor, date, short_story, SUBSTRING(full_story,

    1, 15) as full_story, xfields, title, category, tags, alt_name, comm_num,

    allow_comm, allow_rate, rating, vote_num, news_read, flag FROM srv11886_post

    WHERE approve = '1' AND allow_main = '1' ORDER BY fixed desc, date DESC LIMIT

    0,10;

    которые предназначены для вывода последних новостей на главной странице,

    используют сортировку после выборки.

    т.к. mysql не может хранить все записи в оперативки (таблица около 70mb), то

    используется метод filesort (создание и сортировка во временном файле) более

    16000 строк.

    В итоге каждый такой запрос обрабатывется по 10-60 секунд.

    Вывод, данная версия движока, который у Вас уситановлен (DLE) не предназначен

    для таких больших обьёмов данных. Оптимальным решение будет сменить его на

    другую версию или вообще другой движок.

    Пока мы немного заменили запрос в скрипте [engine/engine.php] (не затирайте

    наши изменения) с

    SELECT SQL_CALC_FOUND_ROWS id, autor, date, short_story, SUBSTRING(full_story,

    1, 15) as full_story, xfields, title, category, tags, alt_name, comm_num,

    allow_comm, allow_rate, rating, vote_num, news_read, flag FROM srv11886_post

    WHERE approve = '1' AND allow_main = '1' ORDER BY fixed desc, date DESC LIMIT

    ...

    на

    SELECT SQL_CALC_FOUND_ROWS * FROM srv11886_post WHERE approve AND allow_main

    ORDER BY fixed desc, date DESC LIMIT ...

    это на порядок уменьшило время его выполнения, но нагрузка всёже остаётся

    достаточно большой.

    Есть и другие тяжёлые запросы, которые в обызательном порядке должны быть

    переписаны с учётом работы с большой базой данных.

    Приведенное выше изменение запроса, практически ничем не помогло.

    Приведенная ниже цитата, это уже после обновления и с измененным как выше запросами в engine.php (со стандартными запросами сайт лежал). сайт также в ауте.

    Ограничение на 50 соединений.

    В списке процессов начали повисали кучи запросов вида

    UPDATE LOW_PRIORITY srv11886_users set lastdate='1219160413' where

    user_id='54671'

    UPDATE LOW_PRIORITY srv11886_users set lastdate='1219160359' where

    user_id='54147'

    UPDATE LOW_PRIORITY srv11886_users set lastdate='1219160345' where

    user_id='15788'

    , наверно, что то сервисное движок начал по расписание прокручивать.

×
×
  • Создать...