Как успокоить сайт?

123
ВC
На сайте с 02.02.2006
Offline
459
#11

Ну как я его починю?

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

Что тут чинить?

pauk
На сайте с 26.01.2005
Offline
543
#12
Kost:
Если он не выдерживает добавление аж 15 ссылок в день, наверное надо поискать причину в самом сайте.

Или в хостере :(

Hi!
pauk
На сайте с 26.01.2005
Offline
543
#13
Владимир-C:
А сейчас ссылок больше тысячи и для их индексации нужны ресурсы.

1000 страниц*объем страницы (боты за раз все не индексируют, и не каждый день)

15 ссылок в день (или сколько там) * объём страницы

Даже предположим 5 ботов всё индексируют.

ГДЕ НАГРУЗКА?

ВC
На сайте с 02.02.2006
Offline
459
#14

Я вот полазил по логу. Получилось примерно 300 запросов подряд сделал Яндекс (300 разных файлов прочел). И сделал это за полчаса. Нагрузка на Хостинг (исчисляется за час с 8 до 9 утра, а поиск был с 8 до 8:30 утра) - 7 процентов!

Хостинг www.1gb.ru

K
На сайте с 31.01.2001
Offline
737
#15

Считайте, если нормальное время на формирование страницы 1 секунда, сайт должет в час обслуживать 3600 запросов и не помирать.

Выделенные полосы в Москве (http://www.probkovorot.info) привели к снижению скорости до 23%.
Eric_evil
На сайте с 22.09.2005
Offline
81
#16

У меня кстате недавно был подобный случай. Неожиданно сайт отключили, а отписал хостеру. Мне пришло письмо что сайт отключен из за того, что идет с него большая нагрузка на процессор порядка 40 процентов.

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

Вот такая вот бешенная картинка :)

-------------------------------- Создание и продвижение сайтов в Новосибирске ... и не только .. (http://www.saiting.ru)
[Удален]
#17

Владимир-C, пришлите хотя бы структуру БД, посмотрим, вдруг там явные ляпы есть.

На этом форуме сейчас одновремено "Присутствуют: 644 (312 пользователей, 211 гостей, 121 роботов)",можете представить, сколько SQL-запросов в секнду они генерят и ничего, форум работает.

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

ВC
На сайте с 02.02.2006
Offline
459
#18
javadf:
Владимир-C, пришлите хотя бы структуру БД, посмотрим, вдруг там явные ляпы есть.

Могу прислать сам скрипт. Он называется linkexchanger и используется довольно широко. А Бызы данных в нем нет, он работает без использования БД.

[Удален]
#19

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

MK
На сайте с 18.08.2005
Offline
126
#20

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

Скрипт организован неоптимально. Вот кусок из файла tmp.php, который инклудится в index.php



$file = file("base.dat");
$fp=fopen("tmp.dat","w");
flock($fp, LOCK_EX);
for($i=0; $i<count($file); $i++){
fwrite($fp, $file[$i]);
}
flock($fp, LOCK_UN);
fclose($fp);
$file = file("tmp.dat");
$fp = fopen("tmp.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $id, ext => "$nick|$url|$mail|$category|$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip|$check_date");
}
usort($tmp, fieldAsc);
foreach($tmp as $val) fputs ($fp, "$val[field]|$val[ext]");
flock($fp, LOCK_UN);
fclose($fp);


Файл где хранятся ссылки base.dat читается в массив ($file), из него создается массив $tmp, который пишется tmp.dat, потом в индексе.пхп опять читается ($base = file("tmp.dat");). Размер base.dat при 1000 ссылок под мегабайт скорее всего, одновременно получается 3 массива такого размера, что бы вывести 10 ссылок на странице. Два раза в индекс.пхп читаются категории: $cid = file("categories.dat"). Можно попробовать удалить вот этот кусок:

$fp=fopen("tmp.dat","w");

flock($fp, LOCK_EX);
for($i=0; $i<count($file); $i++){
fwrite($fp, $file[$i]);
}
flock($fp, LOCK_UN);
fclose($fp);
$file = file("tmp.dat");

и в конце tmp.php дописать $file=$tmp=null; вроде они по новой формируются в индексе.пхп. А по хорошему переписать все с построчным чтением файлов разработчику надо.

нет
123

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