Можно ли изменить интенсивность чтения страниц сервера пауком?

123
B
На сайте с 23.10.2006
Offline
170
#11

если эти страницы не часто изменяются то юзаем

http://sb-news.net/index.php?n=12

Elizov
На сайте с 17.06.2007
Offline
1
#12
bimcom:
если эти страницы не часто изменяются то юзаем
http://sb-news.net/index.php?n=12

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

А яндекс совсем уже о....л - каждые полчаса налетает, вот последние сводки (как в аптеке - взял подряд 200 страниц... пауза... и т.д.)

2007-06-17 23:15:01 2007-06-17 23:30:01 8.67 % 2.6 min 6.2

2007-06-17 22:45:01 2007-06-17 23:00:01 8.37 % 2.51 min 3.73

2007-06-17 22:15:00 2007-06-17 22:30:01 8.42 % 2.53 min 3.2

2007-06-17 20:15:01 2007-06-17 20:30:01 8.97 % 2.69 min 4.25

А вот вариант со статус кодом HTTP 304 Not Modified меня реально заинтересовал - почему нет? Тут интересно - как паук отнесется к подобным "фокусам"??

XPraptor:
Только разобраться когда нужно отдавать 304 а когда уже пора бы и пустить попастись.

- кстати, уже имеются некоторые мысли на этот счет, но опять же - а если паук не "поймет" и отреагирует как на запрет?

B
На сайте с 23.10.2006
Offline
170
#13

а почему самому нельзя инициировать обновление кэша?

ну а если информации для обновления много - делайте локальныю копию той БД к которой обращаетесь и синхронизируйте их.

progress
На сайте с 11.07.2006
Offline
125
#14
Elizov:
- кстати, уже имеются некоторые мысли на этот счет, но опять же - а если паук не "поймет" и отреагирует как на запрет?

Поймет, если даже не поймет - то заберет контент, Вам надо только научить движок правильно отдавать 304

Elizov
На сайте с 17.06.2007
Offline
1
#15
bimcom:
а почему самому нельзя инициировать обновление кэша?
ну а если информации для обновления много - делайте локальныю копию той БД к которой обращаетесь и синхронизируйте их.

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

progress:
Поймет, если даже не поймет - то заберет контент, Вам надо только научить движок правильно отдавать 304

- что-ж, спасибо за совет, буду копать в этом направлении

P.S.: Начались новые сутки, всё по-прежнему, к тому же американцы сейчас добавляют нагрузки своей активностью :( - сервер-то общий

2007-06-18 00:15:01 2007-06-18 00:30:01 9.83 % 2.95 min 5.16

2007-06-18 00:00:01 2007-06-18 00:15:01 5.37 % 1.61 min 4.3

muar
На сайте с 15.04.2006
Offline
27
#16

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

но так как аудитория целевая англоязычная в основном - решили просто периодически запрещать яндексу индексацию некоторых разделов.

это конечно не решение, но ...

Elizov
На сайте с 17.06.2007
Offline
1
#17
muar:
у меня был клиент с большим потоком посетителей и только яндекс и вебальта сайт периодически наклоняли. хостер был российский, ворчал. программер ничего не придумал.
но так как аудитория целевая англоязычная в основном - решили просто периодически запрещать яндексу индексацию. Неделю открыта, неделю закрыта в robots
это конечно не решение, но ...

У меня тоже доля российской аудитории невелика в пределах ВСЕГО домена (от силы 4-5%), но применительно к данным субдоменам - профилирует. И мало того, яндекс - основной поставщик посетителей, к сожалению, потому так рисковать не хочется :(

muar
На сайте с 15.04.2006
Offline
27
#18
Elizov:
У меня тоже доля российской аудитории невелика в пределах ВСЕГО домена (от силы 4-5%), но применительно к данным субдоменам - профилирует. И мало того, яндекс - основной поставщик посетителей, к сожалению, потому так рисковать не хочется :(

ну может периодически закрывать лишь какие-то разделы? которые он особенно треплет и которыми можно пожертвовать? У нас было много разделов-дублей типа "версия для печати"

Elizov
На сайте с 17.06.2007
Offline
1
#19
muar:
ну может периодически закрывать лишь какие-то разделы? которые он особенно треплет и которыми можно пожертвовать? У нас было много разделов-дублей типа "версия для печати"

Увы - не получается, специфика... :( Все разделы важны, пока кэш не наполнится свежими страницами, будут нагрузки...

Пока применил такое решение (по времени изменения папки "cache/" определяю когда была последняя запись в кэш):


if ($useragent == "Yandex/1.01.001 (compatible; Win16; I)") {
if ($xtimex = time()-filemtime("cache/")<3)
header("HTTP/1.1 304 Not Modified");
} else
header ("Last-Modified: ".gmdate("D, d M Y H:i:s")." +0200");

P.S.: код этот уже показал свою неэффективность - яндекс хидер 304 игнорирует (в таком виде), величина $xtimex постоянно равна = 1, а не 3 (и больше), как было задумано.

Прерывать же выполнение командой exit(); следом после header("HTTP/1.1 304 Not Modified"); пока боязно - да и поможет ли?

XPraptor
На сайте с 15.10.2004
Offline
333
#20

Нет, прерывать не вздумайте - это будет приравнено к 404. А как игнорирует? Снова заходит на эту страницу? А период захода не удлинился? Может он постепенно начнет снижать период захода, нужно просто попасти несколько страниц с отдачей 304, а остальные пока не трогать.

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий