решение для вывода рандом галеры

serge
Posts: 930
Joined: Mon Mar 14, 2011 7:53 am

решение для вывода рандом галеры

Post by serge »

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

У меня сейчас так:
<a href="/gallery/<?php
$ran = array(<thumb order=ctr num=1-200 category=CURRENT_ITEM_GROUP>"<!--GALLERY_SLUG-->", </thumb>);
echo $ran[array_rand($ran, 1)];
?>.html">

но это создает очень заметную нагрузку...когда код убираю, то LA, CPU и disk i/o rates прямо на глазах падают. Нагрузка не критичная в целом, но как-то не по феншую такой фигней грузить сервак, по-моему.

Может быть вынести как-то? в файл random.php... а там уже переменными значения ставить типа
<a href="/random.php?limit=200&category=CURRENT_ITEM_GROUP">
или это те же яйца, но вид сбоку будет? голову сломал, а фича нужна)
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: решение для вывода рандом галеры

Post by admin »

<thumb num=1 order=easy_random

чем плохо?
Don't forget to run script update
serge
Posts: 930
Joined: Mon Mar 14, 2011 7:53 am

Re: решение для вывода рандом галеры

Post by serge »

тем, что релайтед в любом виде грузит сервер излишне, когда много галер... ну грубо говоря, 300к галер и каждый раз там генерится по коду тумба(ы) на каждой. Ставил кэш на сутки - особо не помогло, может на месяц надо конечно... ну и даже просто визуально, если открывать галеру с релейтед, реально небольшая задержка заметна... убираешь - открывается мгновенно. В идеале бы так: есть, скажем, 100 категорий, сгенерил раз в сутки/неделю файл с айдишниками топ 200 галер для каждой и скрипт юзает его для рандома... я конечно, хз, не програмист, но такая модель должна на порядок меньше ресурсов кушать, чем вот так вот каждый раз "на лету" это генерить
serge
Posts: 930
Joined: Mon Mar 14, 2011 7:53 am

Re: решение для вывода рандом галеры

Post by serge »

Вот нагрузка после того, как релейтад убираю. Понятно, что она не критичная, но зачем ее создавать, если можно обойтись без
Снимок экрана 2021-11-06 в 16.01.24.png
Снимок экрана 2021-11-06 в 16.01.24.png (60.86 KiB) Viewed 1322 times
Снимок экрана 2021-11-06 в 16.00.38.png
Снимок экрана 2021-11-06 в 16.00.38.png (92.85 KiB) Viewed 1322 times
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: решение для вывода рандом галеры

Post by admin »

ралейты для галер кешатся
но у вас

<thumb order=ctr num=1-200 category=CURRENT_ITEM_GROUP>

а группы разные для них

поясните плз как именно какую выборку вы хотите кешить?

одни и теже 200 на весь сайт?
Don't forget to run script update
serge
Posts: 930
Joined: Mon Mar 14, 2011 7:53 am

Re: решение для вывода рандом галеры

Post by serge »

почему одни и те же? если одни и те же, то нужно просто убрать "category=CURRENT_ITEM_GROUP". Но мне хотелось бы топ 200 для каждой категории. Но я все равно не до конца понимаю вопрос. Релейты же не могут быть одни и те же... если, например, добавить tag=CURRENT_ITEM_TAGS_COMBINED, то у каждой галеры будет плюс-минус своя подборка релейтов, соответственно, пока они закэшатся, уже с бОльшей долей вероятности время кэша истечет (ну если не ставить месяц или год)... и впроде как получается постоянная нагрузка
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: решение для вывода рандом галеры

Post by admin »

у вас у галеры 1 категория только?
потому что если несколько то для CURRENT_ITEM_GROUP ребется рендомная из них
получается для галер одной категории будут разные группы

если надо решить что в данном случае будет "текущая группа" для галер которые по факту в разных группах
какие тут варианты?
Don't forget to run script update
serge
Posts: 930
Joined: Mon Mar 14, 2011 7:53 am

Re: решение для вывода рандом галеры

Post by serge »

конкретно в этом случае по-разному, есть 1, есть несколько... но это не столь важно, даже если и рэндомно... главное релевантность... (чтобы в матурах тины не попадались образно говоря). Можно по тэгам сделать, можно по спонсору (если нишевый например), все это сохранит релевантность. Но так или иначе всё это излишне грузит, если мы рандом получаем как бы из релейтед... типа как из пушки по воробьям стреляем в моем понимании
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: решение для вывода рандом галеры

Post by admin »

вопрос тот же
вот у нас 3 галеры , в разных группах (например 5 на каждую)
по какой группе выводить что б можно было кешить запрос?
Don't forget to run script update
serge
Posts: 930
Joined: Mon Mar 14, 2011 7:53 am

Re: решение для вывода рандом галеры

Post by serge »

да так же как и сейчас - по любой... ну рандом то есть.. а какие еще могут быть варианты? можно конечно усложнить) брать, к примеру, ту, в которой меньше галерей, это скорее всего будет более релевантная группа... ну например 1 галера находится в 3 группах: sexy, asian, thai... обычно расклад такой: sexy большее всего галер (популярный кей как не крути), asian - уже ниша, вроде как более точно, а вот в thai, относительно, остальных двух групп будет наверняка меньше всего галерей и при этом это уже будет максимально релевантная выдача. Это первое что в голову пришло, если без банального рэндома.
Post Reply