Перейти к публикации

Рекомендованные сообщения

А как простите Вы его отключили?Откатили ВСЕ изменения, которые делали в движке, чтобы установить модуль?

Или убрали из шаблона тэги?Если второй вариант, то да будет Вам известно, что Вы просто его отображение убрали, а не сам модуль!

Чтобы показать SQL запросы администратору:

Находим и убираем комментирование в mysql.class.php и mysqli.class.php

//			$this->query_list[] = array( 'time'  => ($this->get_real_time() - $time_before), 

//										 'query' => $query,

//										 'num'   => (count($this->query_list) + 1));
Чтобы получилось так:
			$this->query_list[] = array( 'time'  => ($this->get_real_time() - $time_before), 

										 'query' => $query,

										 'num'   => (count($this->query_list) + 1));
В этих же файлах после:
	function display_error($error, $error_num, $query = '')

	{

		if($query) {

			// Safify query

			$query = preg_replace("/([0-9a-f]){32}/", "********************************", $query); // Hides all hashes

			$query_str = "$query";

		}


		echo '<?xml version="1.0" encoding="iso-8859-1"?>

		<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

		<html xmlns="http://www.w3.org/1999/xhtml">

		<head>

		<title>MySQL Fatal Error</title>

		<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

		<style type="text/css">

		<!--

		body {

			font-family: Verdana, Arial, Helvetica, sans-serif;

			font-size: 10px;

			font-style: normal;

			color: #000000;

		}

		-->

		</style>

		</head>

		<body>

			<font size="4">MySQL Error!</font> 

			<br />------------------------<br />

			<br />


			<u>The Error returned was:</u> 

			<br />

				<strong>'.$error.'</strong>


			<br /><br />

			</strong><u>Error Number:</u> 

			<br />

				<strong>'.$error_num.'</strong>

			<br />

				<br />


			<textarea name="" rows="10" cols="52" wrap="virtual">'.$query_str.'</textarea><br />


		</body>

		</html>';


		exit();

	}
Пишем:
	function show_queries()

		{

					foreach ($this->query_list as $value)

						{

							$value['query'] = preg_replace("/([0-9a-f]){32}/", "********************************", $value['query']);

							echo "\n<!-- Запрос: ".$value['query']." (Занятое время: ".$value['time'].")-->\r\n";

						}

		}
А дальше после GzipOut(1); добавляем:
if ($member_id['user_group'] == 1) $db->show_queries();

Изменено пользователем IT-Security
Ссылка на сообщение
Поделиться на других сайтах

Александр Медведев,

врядли в оперативке :) Тем не менее это более гибкий механизм, мне так кажется. Просто описаное мной выше мы уже проходили - на сайте с хорошой посещаемостью, стояло 30 сек кэширование и периодически вылетала ошибка конфликта записи-чтения. Я не сисадмин и мне самому не ясно как такое происходит с точки зрения железа (точнее алгоритм обслуживания винта, что допускает такие проблемы), но с точки зрения скрипта тут всё ясно.

Изменено пользователем Al-x
Ссылка на сообщение
Поделиться на других сайтах
на сайте с хорошой посещаемостью, стояло 30 сек кэширование и периодически вылетала ошибка конфликта записи-чтения
какое то маленькое время жизни кэша. Тогда уж лучше кэшировать не всю страницу целиком, а блочно, не постоянно же весь сайт целиком меняется =)
Ссылка на сообщение
Поделиться на других сайтах

Оказывается я сам себя обманывал...я отключил модуль онлайн только в индекс.пхп и шаблоне...отредактировал все файлы и количество запросов уменьшилось на 6.Спасибо IT-Security.Теперь и время генерации 0.08с. Но у меня еще вопрос,количество новостей влияет на загрузку сайта?(имею ввиду длительность и скорость,а не нагрузку на сервер),у меня просто было 350,новостей на которых не было ссылок(они попросту не использовались)теперь я их все удалил,и интересно,будет ли от этого польза

Изменено пользователем rivatun
Ссылка на сообщение
Поделиться на других сайтах

Александр Медведев,

это только выводимый список он-лайн.

rivatun,

посмотрим) Я думаю это дело продлится до первого хорошего нашествия поисковиков)

Ссылка на сообщение
Поделиться на других сайтах

Al-x может вы и правы :)

Вот запросы,когда пользователь залогинен

<!-- Запрос: SELECT * FROM dle_users where name='Thrasher' and password='********************************' (Занятое время: 0.00699806213379)-->

<!-- Запрос: UPDATE dle_users set hash='********************************', lastdate='1217399217', logged_ip='81.23.24.112' WHERE user_id='1' (Занятое время: 0.000335931777954)-->

<!-- Запрос: SELECT SQL_CALC_FOUND_ROWS id, autor, date, short_story, SUBSTRING(full_story, 1, 15) as full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, flag FROM dle_post WHERE approve = '1' AND allow_main = '1' ORDER BY fixed desc, date DESC LIMIT 0,5 (Занятое время: 0.00271606445312)-->

<!-- Запрос: SELECT FOUND_ROWS() as count (Занятое время: 0.000181198120117)-->

<!-- Запрос: SELECT * FROM dle_forum_topics LEFT JOIN dle_forum_forums ON dle_forum_topics.forum_id = dle_forum_forums.id GROUP BY last_date DESC LIMIT 10 (Занятое время: 0.00949788093567)-->

Ссылка на сообщение
Поделиться на других сайтах

Вообще запросы вполне стандартные.

Я правда думаю разработчикам DLE надо подумать над запросом

SELECT * FROM dle_users where name='Thrasher' and password='********************************'

В плане проверки пользователя на "валидность" куда как лучше запрос типа

SELECT field1, field2, field3 FROM dle_users WHERE ID = 100

UPDATE dle_users set hash='********************************', lastdate='1217399217', logged_ip='81.23.24.112' WHERE user_id='1'

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

Ссылка на сообщение
Поделиться на других сайтах

rivatun,

обнови несколько раз страницу и покажи запросы ещё раз, это важно..

<!-- Запрос: SELECT * FROM dle_forum_topics LEFT JOIN dle_forum_forums ON dle_forum_topics.forum_id = dle_forum_forums.id GROUP BY last_date DESC LIMIT 10

ну швад как не умел писать запросы, так и не умеет... хотя я думаю это тут ни при чём...

Я правда думаю разработчикам DLE надо подумать над запросом

я уже себе давно так сделал, а то действительно куча условий, да ещё и тяжёлых...

а вообще - данное кол-во запрсов - фигня, не там роешь.

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

Ещё мог бьы подумать, что у тебя с сайта тырят картинки, и указывают на них ссылки, но не похоже вот почему: 1. посещаемость маленькая, а картинок для этого должно быть очень много. 2. там выше ты писал, что хостер жалуется именно на индекс.пхп...

Изменено пользователем Al-x
Ссылка на сообщение
Поделиться на других сайтах

<!-- Запрос: SELECT * FROM dle_forum_topics LEFT JOIN dle_forum_forums ON dle_forum_topics.forum_id = dle_forum_forums.id GROUP BY last_date DESC LIMIT 10 -->

Руки за этот запрос оторвать. Кто блин селектит все поля, если они не нужны?

Ссылка на сообщение
Поделиться на других сайтах

Ну во-первых, смысл таблицы форума, если она должны быть в кеше.

Во-вторых, если таблица и нужна, то зачем left, можно подумать на форуме будет тема без форума.

В-третьих, GROUP BY то тут зачем. Ну и сортировка.. правда тут я не знаю = в данном случае она будет по ключу..

Изменено пользователем Al-x
Ссылка на сообщение
Поделиться на других сайтах

Вот запросы когда залогинелся,просмотрел полную новость и перешел по ссылке на главную.

<!-- Запрос: SELECT * FROM dle_users where name='Thrasher' and password='********************************' (Занятое время: 0.00595593452454)-->

<!-- Запрос: SELECT * FROM dle_forum_topics LEFT JOIN dle_forum_forums ON dle_forum_topics.forum_id = dle_forum_forums.id GROUP BY last_date DESC LIMIT 10 (Занятое время: 0.00514316558838)-->

Вот запросы когда я тупо обновляюся

<!-- Запрос: SELECT * FROM dle_users where name='Thrasher' and password='********************************' (Занятое время: 0.115916013718)-->

<!-- Запрос: UPDATE dle_users set hash='********************************', lastdate='1217585004', logged_ip='81.23.24.104' WHERE user_id='1' (Занятое время: 0.000535011291504)-->

<!-- Запрос: SELECT SQL_CALC_FOUND_ROWS id, autor, date, short_story, SUBSTRING(full_story, 1, 15) as full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, flag FROM dle_post WHERE approve = '1' AND allow_main = '1' ORDER BY fixed desc, date DESC LIMIT 0,5 (Занятое время: 0.311872959137)-->

<!-- Запрос: SELECT FOUND_ROWS() as count (Занятое время: 0.000294923782349)-->

<!-- Запрос: SELECT * FROM dle_forum_topics LEFT JOIN dle_forum_forums ON dle_forum_topics.forum_id = dle_forum_forums.id GROUP BY last_date DESC LIMIT 10 (Занятое время: 0.0907001495361)-->

Ссылка на сообщение
Поделиться на других сайтах
  • 3 месяца спустя...

Добрый вечер, тут многие писали что модуль онлайн созфаёт большую нагрузку, а если у меня этот модул виден только модеру и админу 2 чела, то нагрузка меньше?

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...

Решил поднять тему о нагрузке на сервер.

В панеле управления моего хостера есть возможность смотреть нагрузку на файлы и вот что я там увидел-

больше всего нагрузки идёт при обращении на файл - engine/modules/antibot.php

по файлам:

2.42 % - engine/modules/antibot.php

0.26 % - 213-music.html

0.24 % - 24-luchshie-sovetskie-filmy.html

0.23 % - forum/textversion.html

0.2 % - index.php

0.15 % - 264-music.html

0.1 % - 201-tanki.html

0.09 % - 232-diafilmy.html

0.09 % - 160-veshhi-sssr.html

0.03 % - 167-goroda_sssr.html

И такая картина каждый день.

Что это за файл? И почему при обращении к нему идёт нагрузка?

Изменено пользователем Mek
Ссылка на сообщение
Поделиться на других сайтах

Что это за файл? И почему при обращении к нему идёт нагрузка?

это показ кода безопасности CAPTHA

Ссылка на сообщение
Поделиться на других сайтах

это показ кода безопасности CAPTHA

Да, я уже разобрался в этом. Почему идёт нагрузка при обращении к этому файлу? Данный файл оригинальный, никаких изменений в нём я не делал.

Ссылка на сообщение
Поделиться на других сайтах

Почему идёт нагрузка при обращении к этому файлу?

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

Ссылка на сообщение
Поделиться на других сайтах

Но все равно,я считаю что 11 запросов это слишкой,смотря на то что стоят только файлы и новые пользователи.На локалке у меня 1-3(первый раз 3,остальные 1) запрос,а если с модом файлов 3.

Это даже очень мало, 30-40 запросов при онлайне в 2000 тел- около 3% нагрузки на процессор, на других движках. ДЛЕ в этом плане еще более оптимизированный, такое ощущение, что врет хостер.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...