ООО ЭкоЮнит
FAQSearchMemberlistUsergroupsFilesLog inRegisterГлавная
Aeroion.Ru Forum Index
  » Технические форумы
   » Поддержка и моды для phpBB2
    » Album cat optimize server load
   Аддон для Photo Album by Smartor, оптимизирует тяжелый SQL запрос в album cat.php
printer-friendly view
 
AuthorMessage
vlad77 Gender:Male

Модератор


Joined: 15 Mar 2008
Show/Hide

Название мода: Album_cat optimize server load
Автор: vlad77
Описание мода: Это аддон для Photo Album by Smartor, оптимизирует тяжелый SQL запрос в album_cat.php
Версия мода: 1.0.0

Title: Album_cat optimize server load
Author: vlad77
Description: This addon for Photo Album by Smartor, optimizes a heavy SQL query in album_cat.php
Version: 1.0.0

Примечание: Перед установкой этого мода, вы должны установить мод Photo Album by Smartor, взять его можно по ссылке в моей подписи, "Архив модов с phpbb2.de".


Download album_cat_optimize_server_load.txt (4.17 KB). Added/Updated Wed 21 Nov, 2018 16:54. Downloaded 1 Time(s).
Это аддон для Photo Album by Smartor, оптимизирует тяжелый SQL запрос в album_cat.php
This addon for Photo Album by Smartor, optimizes a heavy SQL query in album_cat.php


_________________
Архив модов с phpbb.com phpbb2refugees.com......php?t=241
Архив модов с phpbb2.de yadi.sk/d/XP53sFs.....93Q36Ap , drive.google.com/.....49aHH-NdbR
Back to topOffline View user's profile
vlad77 Gender:Male

Модератор


Joined: 15 Mar 2008
Show/Hide

Оказалось, что в Photo Album by Smartor имеется ошибка. При включенной премодерации, неправильно определяется общее количество изображений. Если без моего мода на последней странице было написано "нет изображений", то с модом происходит неправильный SQL запрос.
Пришлось фиксить ошибку альбома.

Так же добавлена оптимизация аналогичного SQL запроса в персональных альбомах, поэтому мод переименован. Теперь "Album optimize server load", без указания на album_cat.php.

Version: 1.0.1a.

Sergey, перезалейте пожалуйста вложение и переименуйте тему.

Добавлено спустя 1 минуту 45 секунд:

Еще не критичный фикс для Photo Album by Smartor. При премодерации перепутаны надписи "Одобрено" и "Не одобрено".
Code:
открыть
album_cat.php

найти
$approval_link .= ($picrow[$j]['pic_approval'] == 0) ? '<b>'. $lang['Approve'] .'</b>' : $lang['Unapprove'];

заменить на
$approval_link .= ($picrow[$j]['pic_approval'] != 0) ? '<b>'. $lang['Approve'] .'</b>' : $lang['Unapprove'];


Download album_optimize_server_load.txt (9.04 KB). Added/Updated Fri 23 Nov, 2018 18:54. Downloaded 0 Time(s).
Version: 1.0.1a
Это аддон для Photo Album by Smartor, оптимизирует тяжелые SQL запросы в album_cat.php и album_personal.php
This addon for Photo Album by Smartor, optimizes a heavy SQL query in album_cat.php and album_personal.php


_________________
Архив модов с phpbb.com phpbb2refugees.com......php?t=241
Архив модов с phpbb2.de yadi.sk/d/XP53sFs.....93Q36Ap , drive.google.com/.....49aHH-NdbR
Back to topOffline View user's profile
vlad77 Gender:Male

Модератор


Joined: 15 Mar 2008
Show/Hide

Version: 1.0.2

Оказалось, что у lanzer, в его аналогичном коде для viewtopic.php, плохо проработаны разные сортировки, даже при стандартной сортировке по времени размещения, в запросе не задано правило сортировки. Поэтому сортировка может идти не по id вложений, а по любому критерию, который "понравится" серверу, например по алфавиту имен файлов изображений.
При изменении админом настройки количества изображений на странице, если страницу пытались открыть по оставшейся с прежних времен ссылке, код на странице показывал не те изображения.

Исправлено, и оптимизирован код.


Download album_optimize_server_load.txt (8.41 KB). Added/Updated Sun 25 Nov, 2018 14:59. Downloaded 0 Time(s).
Version: 1.0.2
Это аддон для Photo Album by Smartor, оптимизирует тяжелые SQL запросы в album_cat.php и album_personal.php
This addon for Photo Album by Smartor, optimizes a heavy SQL query in album_cat.php and album_personal.php


_________________
Архив модов с phpbb.com phpbb2refugees.com......php?t=241
Архив модов с phpbb2.de yadi.sk/d/XP53sFs.....93Q36Ap , drive.google.com/.....49aHH-NdbR
Back to topOffline View user's profile
vlad77 Gender:Male

Модератор


Joined: 15 Mar 2008
Show/Hide

Version: 1.0.3

В прежней версии, при некоторых условиях возникала ошибка SQL запроса.


Download album_optimize_server_load.txt (8.57 KB). Added/Updated Mon 26 Nov, 2018 21:44. Downloaded 0 Time(s).
Version: 1.0.3
Это аддон для Photo Album by Smartor, оптимизирует тяжелые SQL запросы в album_cat.php и album_personal.php
This addon for Photo Album by Smartor, optimizes a heavy SQL query in album_cat.php and album_personal.php


_________________
Архив модов с phpbb.com phpbb2refugees.com......php?t=241
Архив модов с phpbb2.de yadi.sk/d/XP53sFs.....93Q36Ap , drive.google.com/.....49aHH-NdbR
Back to topOffline View user's profile
vlad77 Gender:Male

Модератор


Joined: 15 Mar 2008
Show/Hide

В
Code:
##############################################################
## MOD Title: Photo Album v2 for phpBB2
## MOD Author: Smartor < smartor_xp@hotmail.com > (Hoang Ngoc Tu) http://smartor.is-root.com
## MOD Description: This is a phpBB-based photo album/gallery management system. It is really powerful, stable, efficient, rich features and highly customizable. The version 2 was written from the scratch for more security, performance, etc. It is not really a MOD/hack, it is rather a phpBB-based system :)
## MOD Version: 2.0.56 


Версия 2.0.56
Предположительно (предположительно, потому что не проверялось) надо в album_cat.php
Code:
найти
    $sql = "SELECT p.pic_id, p.pic_title, p.pic_desc, p.pic_user_id, p.pic_user_ip, p.pic_username, p.pic_time, p.pic_cat_id, p.pic_view_count, p.pic_lock, p.pic_approval, u.user_id , u.username, r.rate_pic_id, AVG(r.rate_point) AS rating, COUNT(DISTINCT c.comment_id) AS comments, MAX(c.comment_id) as new_comment
            FROM ". ALBUM_TABLE ." AS p
                LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id
                LEFT JOIN ". ALBUM_RATE_TABLE ." AS r ON p.pic_id = r.rate_pic_id
                LEFT JOIN ". ALBUM_COMMENT_TABLE ." AS c ON p.pic_id = c.comment_pic_id 
            WHERE p.pic_cat_id = '$cat_id' 
            GROUP BY p.pic_id
            ORDER BY $sort_method $sort_order
            LIMIT $limit_sql";
    if( !($result = $db->sql_query($sql)) )
    {
        message_die(GENERAL_ERROR, 'Could not query pics information', '', __LINE__, __FILE__, $sql);
    }

    $picrow = array();

    while( $row = $db->sql_fetchrow($result) )
    {
        $picrow[] = $row; 
    }

    $tot_unapproved = 0;
    for ($i = 0 ; $i < count($picrow); $i++ )
    {
        if ($picrow[$i]['pic_approval'] == 0 ) $tot_unapproved++ ;
    }

заменить на
    $sql = "SELECT COUNT(pic_id) AS tot_unapproved
        FROM ". ALBUM_TABLE ."
            WHERE pic_cat_id = '$cat_id'
            AND pic_approval = 0 
            ORDER BY $sort_method $sort_order
            LIMIT $limit_sql";
    if( !($result = $db->sql_query($sql)) )
    {
        message_die(GENERAL_ERROR, 'Could not query pics information', '', __LINE__, __FILE__, $sql);
    }

    $row = $db->sql_fetchrow($result);
    $tot_unapproved = ( $row['tot_unapproved'] ) ? $row['tot_unapproved'] : 0;
    $db->sql_freeresult($result);

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

Если ставить мод на Version: 2.0.56, то сначала лучше заменить это запрос, так как он практически полностью одинаков с оптимизируемым запросом, и при установке мода можно ошибиться.

P.S. Это на вскидку, т.к. у меня мод альбома не обновлялся до версии 2.0.56.

Добавлено спустя 6 минут 56 секунд:

P.S. P.S. Наверно большинство админов не захотят всем показывать, как мало они уделяют времени новым изображениям, и как долго изображения ждут премодерации. Если показывать количество ждущих премодерации изображений, только админам и модераторам, то оптимизированный запрос выше, надо поместить после $pic_approval_sql = '';, а перед if ($thiscat['cat_approval'] != ALBUM_USER) добавить $tot_unapproved = 0;
Таким образом избавляемся от лишнего запроса.

Добавлено спустя 13 минут 42 секунды:

P.S. P.S. P.S. Лучше этот запрос и причитающийся код удалить. Психологически от этой фитчи больше вреда, чем пользы, и она плохая с точки зрения оптимизации. Админы и модераторы, и так видят какие сообщения ожидают премодерации.

_________________
Архив модов с phpbb.com phpbb2refugees.com......php?t=241
Архив модов с phpbb2.de yadi.sk/d/XP53sFs.....93Q36Ap , drive.google.com/.....49aHH-NdbR
Back to topOffline View user's profile
Display posts from previous:   

Summary Rating For >> Album cat optimize server load
Average Rating: 0.00 :: Min Rating: 0 :: Max Rating: 0 :: Number of Ratings: 0
Choose Rating: 1   2   3   4   5  

Similar Topics
Topic Author Forum Replies Last Post
No new posts Скрипт вывода последних комментариев в фотоальбоме Photo Album v2 for phpBB2
Написал я простенький скрипт , который должен выводить последние комментарии в фотоальбоме Photo Album v2 for phpBB2 Author: Smartor , но никак не могу сделать пагинацию - вроде и номер страницы методом GET скрипт
Dedof Поддержка и моды для phpBB2 4 Tue 17 Feb, 2009 23:58 View latest post
Dedof
No new posts Addon removed unused profilephoto для Profile Photo MOD
Позволяет удалять неиспользуемые изображения в Profile Photo MOD
Название мода: Addon removed unused profilephoto Описание мода: Removed unused profilephoto, addon for Profile Photo MOD Version: 2.0.2, by Acyd Burn < acyd.burn@gmx.de > - Meik Sievertsen Удаление неиспользуемых фото в
vlad77 Поддержка и моды для phpBB2 0 Fri 06 Feb, 2015 16:28 View latest post
vlad77
No new posts Проблема с чатом от smartor
Благодаря данному порталу узнал о чате Smartor , который также стоит на данном форуме. При попытке установки возникает проблема . У меня установлен уже мод User of the day и как я понял чат не совместим с данным модом ,
papa Поддержка и моды для phpBB2 2 Sat 06 Sep, 2008 17:26 View latest post
papa
No new posts [ Запрос ] Rate Topics Add-On
Не сочтите за флуд, поидее можно было и в ПМ обратиться... Но вдруг не одному мне нужно: У вас на форуме мод Rate Topics от Nivisec стоит. Вот у меня никак не получается сделать во viewforum как у вас - чтобы рейтинг
zKiLL Поддержка и моды для phpBB2 4 Mon 07 May, 2007 21:50 View latest post
zKiLL
No new posts Изменение имени пользователя в базе данных
запрос в БД
Вышло так что по ошибке всех пользователей сделали одним ником, позже его удалили с форума, в БД его нет, вместо Anonymous высвечивает другой ник, как изменить этот ник снова на Anonymous по умолчанию ?
Ленсмен Поддержка и моды для phpBB2 6 Wed 26 Nov, 2014 16:27 View latest post
Ленсмен






All times are UTC + 3 hours
Users browsing this topic:
Registered Users: None

Jump to:   
printer-friendly view
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
/a
Username:

Password:

Log me on automatically each visit
  Яндекс.Метрика
CrackerTracker © 2004 - 2018 CBACK.de