{% else-1 %}
Обновить | Подписаться | Поднять тему
Чтобы выполнить действие авторизируйтесь или пройдите регистрацию на сайте.
1. [автор] (18 фев 2016, 19:50) [0/0] [0] [отв] [спам] [под] +1 | -1

Приветствую.
Кто поможет оптимизировать запрос?
А то что-то страницу отгружает секунд 20.
[code] class Ranking {

public $rankarray = array();
private $rlastupdate;

public function getRank() {
return $this->rankarray;
}

public function getUserRank($id) {
$ranking = $this->getRank();
$users = "SELECT * FROM " . TB_PREFIX . "users";
$users2 = mysql_num_rows(mysql_query($users));
if(count($ranking) > 0) {
for($i=0;$i<=$users2;$i++) {
if( isset( $ranking[$i]['userid'] ) )
{
if($ranking[$i]['userid'] == $id && $ranking[$i] != "pad"* {
$myrank = $i;
}
}
}
}
return $myrank;
}[/code]


Изм. 1 раз. / Посл. изм. (18 фев 2016, 19:51)
2.
mapper * 1.23
(18 фев 2016, 19:52) [0/0] [0] [отв] [спам] [под] +1 | -1

Думаю, что дело не в запросах, раз 20 сек.

3. [автор] (18 фев 2016, 19:53) [0/0] [0] [отв] [спам] [под] +1 | -1

mapper, ну код смотрели уже и Mobiaaa, и некоторые другие кодеры.
Дело именно во вложенности, большом кол-ве строк и запросах

4.
mapper * 1.23
(18 фев 2016, 19:54) [0/0] [0] [отв] [спам] [под] +1 | -1

А хотя если здесь вывод пользователей без пагинации, то может быть, если юзеров много

5. [автор] (18 фев 2016, 19:56) [0/0] [0] [отв] [спам] [под] +1 | -1

mapper, пагинация идет на странице вывода, а это - общий класс.

6.
Mobiaaa * Верифицирован 2.73
(18 фев 2016, 20:27) [0/0] [0] [отв] [спам] [под] +1 | -1
Арессс,

Я не помню, писал ли в асе тебе
Там косяк, что выбираются все юзеры, и потом в циклах их туда/сюда гоняют
От чего поток в mysql катастрофический
Время на анализ надо, что и как
Либо кеш заводить, либо строить более сложные запросы union/join
Но нужен анализ и понимание работы данного участка кода
p.s. Когда ты мне писал я смотрел mysql статистику, видно как исполняется один и тот же запрос многократно (вытягиваются юзеры, что-то типа user_access > число)
Вот этот кусок надо найти и оптимизировать


Изм. 1 раз. / Посл. изм.
Mobiaaa * Верифицирован 2.73
(18 фев 2016, 20:28)
7. [автор] (18 фев 2016, 20:44) [0/0] [0] [отв] [спам] [под] +1 | -1

Mobiaaa, не возьмешься, Дим?

8.
Mobiaaa * Верифицирован 2.73
(18 фев 2016, 20:47) [0/0] [0] [отв] [спам] [под] +1 | -1

Арессс, не сегодня точно
В выходные скорей всего

9. [автор] (18 фев 2016, 21:25) [0/0] [0] [отв] [спам] [под] +1 | -1

Mobiaaa, хорошо. Когда побеспокоить?

10.
Mobiaaa * Верифицирован 2.73
(18 фев 2016, 21:41) [0/0] [0] [отв] [спам] [под] +1 | -1

Арессс, Я брякну в асю, когда буду

Чтобы писать сообщения авторизируйтесь или пройдите регистрацию на сайте.
Подписаны: 0
Скачать тему | Файлы темы | Фильтр сообщений