Все для DataLife Engine / DLE хаки / Хак для DLE / Хак Уменьшение количество запросов при выводе новостей

Хак Уменьшение количество запросов при выводе новостей


Оптимизация при выводе новостей можно добиться с помощью маленького хак дле - Уменьшение количество запросов.
По словам автора:
необходимо было сделать навигацию для модуля - пришла в голову мысль сделать оптимизацию навигации и в процессе раздумий придумал, как оптимизировать стандартный вывод новостей в контенте.
Подобный вариант оптимизации, не даст огромный прирост производительности, но зато снизит нагрузку, если есть возможность, что-либо улучшить без ущерба для остального, следует это сделать.

Кратко описание сути хака дле - Уменьшение количество запросов при выводе новостей, установка позволяет убрать запрос на подсчет количество новостей при навигации.
В DLE всегда подсчитывается количество новостей в выводимом списке коротких новостей, независимо от их количества.
Например бывают ситуации, когда в категории (подкатегории) выводится всего 2-5 новостей. А в настройках DataLife Engine указано 10 новостей на страницу. Естественно тут навигация не нужна, но DLE об этом узнает только, после того как отдельно сделает запрос на подсчет количества новостей по заданным условиям.
Вот именно этот запрос мы и будем оптимизировать.

Открыть файл /engine/modules/show.short.php
Найти и удалить код:

	if( ! isset( $view_template ) ) {
		
		$count_all = $db->super_query( $sql_count );
		$count_all = $count_all['count'];
	
	} else
		$count_all = 0;


Найти строку:

$db->free( $sql_result );



После нее вставить:

if( !isset( $view_template )){
		if($i >= $config['news_number']){
			$count_all = $db->super_query( $sql_count );
			$count_all = $count_all['count'];
		}else $count_all = $i;
	}else $count_all = 0;


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

Hak-Optimiziruem-zaprosy-v-DLE.zip [9,58 Kb] (cкачиваний: 93)
  • 100
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent