И вот еще. Несмотря на свою ненависть к яндексу, я тут буду полностью солидарен с Владимиром, который (о чудо, здоров ли ты там?) все еще не высказался в своем ключе: вы сами виноваты. Сайт написан криво, тут даже о СЕО говорить не приходится. Такое впечатление, что писал его свежеиспеченный программист, который кроме оптоволокна в 100 мегабит и серверов по 16 ядер с 64гб оперативки ничего не видел.
Смотрите сами на скринншот. Я так и не дождался, когда соизволят загрузиться метатэги. При этом грузится неимоверные 1б5 мегабайта данных со страницы. А метатэги должны идти ПЕРВЫМИ. Вам нужно переделывать сайт принципиально.
Также дополню к выше сказанному:
В Вебмастере - Проверка страницы несмотря на установленную мной рекомендацию рендерить с учетом JavaScript здесь мы видим, что версия в базе " была скачана без применения исполнения JavaScript". Почему так? может кто-то подсказать?
Потому что там де написано в выборе - «РЕКОМЕНДУЮ». Порекомендовали, хорошо. Яндекс наплевал - его право. Вообще, как я понимаю, яндекс экономит на железе. А обработка js- дополнительная нагрузка на него. Вот и избегает. Да и технология формирования важных данных на стороне клиента - на мой взгляд сомнительная. Переписывайте сайт. Сифилис надо лечить не подорожником, а антибиотиками.
В данном случае мы не знаем, что дальше происходит с объектом. Может быть лишнее, а может быть и нет. Возможно, он используется в нескольких местах - и что, откуда мы узнаем, к какому id он относится?
Да, я тоже так и подумал.
Ну я уже где то 14 лет пишу код за который мне деньги платят, да не 18 конечно, но до этого я писал код (довольно долго) за который мне не платили денег =))) и да водку (самогон) я пил уже примерно 25 лет назад =))
Но в вашем случае проще переписать на самом деле, так сказать провести рефакторинг и запилить... кстати а что там за CMS из 2006? php nuke какой нибудь? Я уже и CMS то не помню какие были в те года, тогда еще яндекс perl разработчиков нанимал, а я кстати на нем писал =)))
Самопал. Обошлась примерно в 500 000р. Мы тогда с женой, ну на пару лет раньше, четырехкомнатную квартиру купили за 1,500,000. В Москве. В хорошем районе 5 мин от метро на половине линии.
Так что переписать - я туп для этого, а с продажами сейчас куда хуже, то исть денег нет.
Коду 18 лет. Я уже лет 5-6 его сам пилю, но косметику. А структура - 18 лет. Многие из вас писались еще в штаны тогда :-) Ну ладо, мож не писались - но водку не пили точно.
Короче - мое предположение оказалось верным. За каким-то хреном PHPmyAdmin 4.0 считает не так как 5.2
Взял и забросил им одинаковое:
SELECT s1.variable_value / s2.variable_valueFROM information_schema.global_status s1, information_schema.global_status s2WHERE s1.variable_name='queries'AND s2.variable_name ='uptime';
И что бы вы думали? В обоих случаях получил примерно одинаковые 400 в секунду плюс-минус!
Вот гады.
Ну проанализируй что дальше происходит. Возможно айдишник потом используется для получения других данных. Это как раз правильно - не получать всю таблицу с SELECT * FROM а сделать выборку столбцов. Другой вопрос - почему не заджойнить нужное в таком случае. Но это все гадание на кофейной гуще - нужно анализировать все.
НО в обьом случае дал простого сайта это перебор. Но может там у тебя там магазин с товарами у которых сотни параметров...
Магазин порядка 7000 товаров, параметров не много, но не просто артикул-цена.
Короче, картина слегка проясняется. Логу можно верить, буду надеяться что 90% запросов торчат перманентно в кеше, в котором порядка 16 000 штук сидит. Зря он чтоль 64 мега.
Возник другой вопрос. Я озадачился, почему у меня 450 запросов в секунду, и не значит ли это что студены шалят. Но простое умножение: примерно 30 хитов в минуту, это 0.5 в секунду = примерно 500 запросов и так оно и есть. Так что вроде тут все сходится.
Но тут же становится непонятным - почему на втором сервере, где все точно такое же, причем посетителей минимум вдвое больше (а то и в 10 раз) значение запросов в секунду всего СЕМЬ???
Главное я полез на третий мой сервер, где посещаемость меньше второго, но ЦМС более запросопрожорливая - и там тоже 7 запросов в секунду. Как так?
В голову приходит только одно: PHPmyadmin РАЗНЫХ ВЕРСИЙ по-разному считает число запросов... Может такое быть?
Я никогда не говорил, что 15 лет ДЕЛАЮ сайты. Я 18 лет на нем ЗАРАБАТЫВАЮ, а делать начал когда понял, что мелкие доделки меня разорят и затянутся до второго пришествия.
Именно. Там строятся линки меню и путей. Но вопрос не в этом...
Не хочу. Вопрос был зачем SELECT id когда id - известно и торчит там же: WHERE id= ???
Да, я глянул ниже по коду, возможно id удобнее потом брать из массива, полученного выполнением запроса... Но - нет.
Вот тут, хоть я и лох, но мне кажется что 1000 запросов типа SELECT id, id_parent FROM `content` WHERE id=ххх померкнут перед одним сложным и корявым.... Не?
Чуть выяснил. Явно кто-то долбится в сайт, так как сайт один в этой панели, я его на пару минут отключил - сразу и запросов стало в норме, и тормозов нет.
Непонятно, почему в аксесс логе всего немного - 21 хит в минуту, это даже не раз в секунду...
А какие логи можно включить?
Так, логи я разобрался. Включил... Выяснил что на генерацию 1 страницы приходится 1150 запросов. типа SELECT. Возник вопрос...
1. Это типа норм? Большинство запросов простые SELECT aaa FROM bbb WHERE ccc
2. Нашел такие запросы: SELECT id, id_parent FROM `content` WHERE id=ххх - это что, косяк программиста? Зачем СЕЛЕКТ айди когда ГДЕ айди = ...?