Robin_Bad

Robin_Bad
Рейтинг
85
Регистрация
24.12.2007
LEOnidUKG:
Да там проблема в другом. Как зайдут наши любимые поисковые боты на разделы + 5000 обычных юзеров... и понеслось гонять эту гиговую таблицу туда сюда. Каждый хочет её SELECT 2-а раза, а она блокируется каждый раз.
Поэтому и решил кэш именно файловый сделать с id, ну и + количество id в text не помещается, а это значит держать такие массивы смысла нет в БД.

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

mysql> explain SELECT SQL_NO_CACHE id FROM `cms` WHERE cat=1;

+----+-------------+-------+------+---------------+------+---------+-------+------+-------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+-------+------+-------+
| 1 | SIMPLE | cms | ref | cat | cat | 4 | const | 9 | |
+----+-------------+-------+------+---------------+------+---------+-------+------+-------+
1 row in set (0.00 sec)

mysql> alter table cms add index cat_id(cat,id);
Query OK, 10 rows affected (0.11 sec)
Records: 10 Duplicates: 0 Warnings: 0

mysql> explain SELECT SQL_NO_CACHE id FROM `cms` WHERE cat=1;
+----+-------------+-------+------+---------------+--------+---------+-------+------+-------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+--------+---------+-------+------+-------------+
| 1 | SIMPLE | cms | ref | cat,cat_id | cat_id | 4 | const | 9 | Using index |
+----+-------------+-------+------+---------------+--------+---------+-------+------+-------------+
1 row in set (0.00 sec)
LEOnidUKG:
Да не вопрос.

CREATE TABLE `cms` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`dec` text COLLATE utf8_unicode_ci NOT NULL,
`trans` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`data` date NOT NULL,
`pic` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`comment` int(1) NOT NULL DEFAULT '0',
`comment_static` int(1) NOT NULL,
`rating_static` int(1) NOT NULL,
`rating` int(1) NOT NULL DEFAULT '0',
`art` int(1) NOT NULL DEFAULT '0',
`nextart` int(1) NOT NULL DEFAULT '0',
`krohi` int(1) NOT NULL DEFAULT '0',
`description` text COLLATE utf8_unicode_ci NOT NULL,
`keywords` text COLLATE utf8_unicode_ci NOT NULL,
`cat` int(11) NOT NULL,
`search` text COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `trans_2` (`trans`),
KEY `data` (`data`),
KEY `cat` (`cat`)
) ENGINE=MyISAM AUTO_INCREMENT=185776 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

Если выборка из примера выше для вас достаточно значима, я бы ещё добавил составной индекс cat_id(cat,id), чтобы данные прямо из индекса вытаскивать.

LEOnidUKG:
SELECT SQL_NO_CACHE id FROM `cms` WHERE cat=1

А чисто ради любопытства, можете сюда выложить результат "SHOW CREATE TABLE `cms`"?

kruchen:
Ребят, прислали мне тут на аудит сайт. Залезаю посмотреть robots.txt и просто начинаю трястись от смеха, а на глазах слезы... В общем, ловим фан вместе:

User-agent: *
Disallow: /out.php

host: http://site.ru/
Sitemap: http://site.ru/sitemap.php


Не спрашивайте меня, где такие криворукие работают, все равно не скажу :)

Кто сколько ошибок насчитает? У меня 4 вышло.

какие 4 ошибки вы здесь видите?

так а чем плох пример в официальной документации? всё предельно просто описано.

но я согласен с Онтарио, это может выйти боком

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

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

Так в Google Webmaster Tools чётко показывается, какая версия robots.txt в данный момент используется: https://www.google.com/webmasters/tools/robots-analysis?hl=ru&siteUrl=http://site.ru/ (если вдруг не видели этой страницы)

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

Flobus:
Добрый день. Подскажите пожалуйста, при проверке правильности валидации sitemap.xml выводится ошибка "Недопустимая последовательность байт в BOM

illegal BOM"
Кто может сказать в чем дело и как исправить?

BOM - это специальный маркер кодировки, который должен располагаться вначале файла. Подробнее можете почитать в Википедии.

Обычно его вставляют в файл либо совсем непродвинутые текстовые редакторы, либо продвинутые, но в установках которых стоит принудительное выставление этого самого BOM. Но лично я бы рекомендовал никогда и нигде его не использовать. Скачайте приличный текстовый редактор и сохраните файл без BOM. Под Windows могу порекомендовать хоть тот же Notepad++.

ibred:
Приветствую.
Мне требуется код для проверки поля с опр. идентификатором на валидность. Строка вводимая в поле должна начинаться на http://sitename, а заканчиваться на .jpg или .png или .gif.

Подсобите кто-нибудь :) Либо укажите цену за которую готовы помочь :)

Эта проверка, чтобы картинки с чужих доменов не постили?

foxi:
memcache в памяти, память в swap = тормоза больше, чем если бы кэш сразу был в файлах :)

Всё равно примерно то на то и выйдет. Если memcache ушёл в swap, значит свободной памяти уже нет, и файлов в ней оказаться тем более не может. Как-то так :)

Всего: 274