- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Т.е. хостер вам переписал все запросы внутри вашей CMS ? почему он предлагает проверить нагрузку сейчас ?
Очевидно, он что-то втихую сделал на сервере и дополнительно отметил ваши неудачные запросы.
Как ЭТО вообще работало? Если там varchar то надо заключать в кавычки, а если там хранятся числа, то переделай поле на int, заработает быстрее.
Раз уж тема по оптимизации... Как оптимизировать запрос SELECT COUNT(*) FROM table, а то он выполняется 60к раз в сутки? Жрет памяти неимоверное количество.
прекрасно работает, если админ не балуется настройкой sql_mode
Как оптимизировать запрос SELECT COUNT(*) FROM table, а то он выполняется 60к раз в сутки? Жрет памяти неимоверное количество.
перевести таблицу в myisam ?
Раз уж тема по оптимизации... Как оптимизировать запрос SELECT COUNT(*) FROM table, а то он выполняется 60к раз в сутки? Жрет памяти неимоверное количество.
да кэшируйте вы это ко-во) сделайте поле в бд или в файл записывайте этот счетчик. ну и меняйте его когда ко-во поменяется)
dvaes добавил 18.04.2010 в 16:02
SELECT * FROM `bla` where `sss`=702 and `mod`=1 ORDER BY `view` desc limit 10;
необходимо заключать 702 в кавычки. Т.к. поле типа varchar().
Иначе индекс не используется.
если в sss во всех записях число, то и в правду надо тип в инт перевести) а индекс какой у вас стоит? туда бы индекс на два-три поля с полем view. надо смотреть в эксплэйне)
SELECT COUNT(ID) FROM table
SELECT COUNT(ID) FROM table
не советуйте вредного (если касается MyISAM).
У меня и так MyISAM. COUNT(ID) уже думал о таком выходе, не поможет?
А ввести дополнительный счетчик можно попробовать. Изменять его придется только при добавлении и удалении записей, всего в двух местах в движке...
SELECT * FROM `bla` where `sss`=702 and `mod`=1 ORDER BY `view` desc limit 10;
Здесь можно попробовать двойной индекс по sss, mod.
CREATE INDEX bla_index ON bla(sss,mod);
Или тройной
CREATE INDEX bla_index ON bla(sss,mod,view);
Если его нет ещё.
Но точно не помню стоит ли включать поле из order by.
Dreammaker добавил 18.04.2010 в 16:55
maxtat, хоть какие-то индексы есть в таблице? По идее COUNT(*) должен быстро считать. А вообще завести счётчик или же кешировать данные - здравая идея.
maxtat, какой вопрос - такой ответ.раз тормозит, значит вы неполно объяснили задачу.
запрос "select count(*) from table" без дополнительных условий в myisam выполняется мгновенно.