User Tools

Site Tools


ru:new_rotation_faq

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ru:new_rotation_faq [2018/04/26 08:32]
admin [Что такое реврайты mod_rewrite]
ru:new_rotation_faq [2018/08/09 17:07] (current)
admin [Почему rot.php выполняется так долго]
Line 36: Line 36:
  
  
-===== Как сделать кастом галю из своего контента ​===== +===== Custom gallery with my local content ​=====
- +
-Пока есть тестовый вариант:​ +
-  * создать папку scj/​gallery/​upload/​1 (2, 3 и тп) +
-  * залить туда фотки\мувики названные 1.jpg,2.jpg и тп (1.avi, 2.avi)  +
-  * при импорте указать на месте URL в патерне написать не урл гали, а название папки , например 1 +
  
 +  - Залить куда угодно тумбы
 +  - при и импорте указать Image List = перечисление урлов картинок
 ===== Что такое Init cats в Rotation - Special или почему я добавил категорию в админке,​ а она не появилась на сайте ===== ===== Что такое Init cats в Rotation - Special или почему я добавил категорию в админке,​ а она не появилась на сайте =====
  
Line 56: Line 52:
 Время кеша задается в common.php CACHE_TIME, начиная с апдейта 46 время в common.php можно не указывать,​ а указывать в сетингах ротации. Обратите внмиание,​ что время указаннное в common.php имеет преимущество,​ те если указано в common.php то настройки ротации скрипт игнорирует. Время кеша задается в common.php CACHE_TIME, начиная с апдейта 46 время в common.php можно не указывать,​ а указывать в сетингах ротации. Обратите внмиание,​ что время указаннное в common.php имеет преимущество,​ те если указано в common.php то настройки ротации скрипт игнорирует.
  
-Дабы посомтреть какую-то страницу без кеша надо добавить в урле параметр skip_cache=true. Например,​ http://​domain.com/?​skip_cache=true+Дабы посмотреть какую-то страницу без кеша надо добавить в урле параметр skip_cache=true. Например,​ http://​domain.com/?​skip_cache=true
  
 Начиная с апдейта 46 появила recreate cookie - Rotation - Special - Recreate visited pages - скрипт ставит секретную куку вашему браузеру на 10 часов (можно снять куку в любой момент там же). Если вы зайдете с этой кукой на любую страницу вашего сайта, эта страница будет пересоздана (те сброшен кеш именно для этой страницы). Бывает полезно при изменении дизайна какой-то одной определенной страницы. ​ Начиная с апдейта 46 появила recreate cookie - Rotation - Special - Recreate visited pages - скрипт ставит секретную куку вашему браузеру на 10 часов (можно снять куку в любой момент там же). Если вы зайдете с этой кукой на любую страницу вашего сайта, эта страница будет пересоздана (те сброшен кеш именно для этой страницы). Бывает полезно при изменении дизайна какой-то одной определенной страницы. ​
  
-Те разница между skip_cache и recreate cookie ​ в том, что skip_cache покажет страницу без кеша только вам и все, а recreate cookie покажет страницу без кеша ​и такой какую вы ее видете положит в кеш и другие пользователи будут видеть ее из кеша в таком виде.+Те разница между skip_cache и recreate cookie ​ в том, что skip_cache покажет страницу без кеша только вам и все, а recreate cookie покажет страницу без кеша, потом ​такой какую вы ее видете положит в кеш и другие пользователи будут видеть ее из кеша в таком виде.
  
 Еще раз: страница создава в 00 минут. Время кеша 10 минут. в 05 вы меняете дизайн. Еще раз: страница создава в 00 минут. Время кеша 10 минут. в 05 вы меняете дизайн.
Line 158: Line 154:
  
 Есть несколько ньансов:​ Есть несколько ньансов:​
-  - файловый кеш не такой медленный как можно подумать. Смысл в том, что работа с ним эффективно кешируется системой и разница не глобальна, можно так же вероирть\поднять vnodes на серваке +  - файловый кеш не такой медленный как можно подумать. Смысл в том, что работа с ним эффективно кешируется системой и разница не глобальна 
-  - при этом кеш перманентно лежит на диске и в случае перегрузки сервера никуда не пропадет и скрипту не придется по новой генерить весь кеш по новой. Те ситуация такая: у нас много трафа, вдруг что-то пошло не так и мы перегружаем сервак. После поднятия сервака какая-то часть сайта уже есть в кеше и все продолжает работать,​ в случае же в мемкешем ​конечно ​весь кеш утерян и скрипту надо на лету создать массу страниц которые до этого лежалди в кеше, что опять создает нагрузку+  - при этом кеш перманентно лежит на диске и в случае перегрузки сервера никуда не пропадет и скрипту не придется по новой генерить весь кеш по новой. Те ситуация такая: у нас много трафа, вдруг что-то пошло не так и мы перегружаем сервак. После поднятия сервака какая-то часть сайта уже есть в кеше и все продолжает работать,​ в случае же в мемкешем весь кеш утерян и скрипту надо на лету создать массу страниц которые до этого лежали в кеше, что опять создает нагрузку
   - если вы все же ставите мемкеш - убедитесь,​ что ему выделено достаточно памяти. Сложно сказать конкретно сколько надо памяти,​ тк это прямо зависит от размера базы и веса шаблонов (в кеш кладет уже сгенерированную страницу,​ html), потому что как только законится доступная память - страницы будут генериться на лету.   - если вы все же ставите мемкеш - убедитесь,​ что ему выделено достаточно памяти. Сложно сказать конкретно сколько надо памяти,​ тк это прямо зависит от размера базы и веса шаблонов (в кеш кладет уже сгенерированную страницу,​ html), потому что как только законится доступная память - страницы будут генериться на лету.
-  - размер мемкеша должен быть достаточным,​ иначе данные будут "​выдавливаться"​ из кеша. Например у нас кеш 10 метров,​ и есть 10 записей по 1 метру. Добавление еще одного в кеш - выдавит первый из кеша. Проблема тут в том, что у мемкеша есть понятие фрагментации памяти,​ когда даные занимают в реальности больше,​ чем говорит статистика. Мемкеш сохраняет грубо говоря блоками. Для простоты понимания если блок 100 байт, а мы сохраняем 1 байт, то репортит оно что занят 1 байт, но в реальности оно занимает 100 байт. Для скрипта проблема в том, что если вытесняются какие то данные то никакой ошибки мемкеш не возвращает и обработать такую ситуацию в скрипте невозможно. Примерно наблюдение - 15% фрагментация. ​Те если мнеьше 15% свободно - скорее всего память уже закончилась. +  - размер мемкеша должен быть достаточным,​ иначе данные будут "​выдавливаться"​ из кеша. Например у нас кеш 10 метров,​ и есть 10 записей по 1 метру. Добавление еще одного в кеш - выдавит первый из кеша. Проблема тут в том, что у мемкеша есть понятие фрагментации памяти,​ когда даные занимают в реальности больше,​ чем говорит статистика. Мемкеш сохраняет грубо говоря блоками. Для простоты понимания если блок 100 байт, а мы сохраняем 1 байт, то репортит оно что занят 1 байт, но в реальности оно занимает 100 байт. Для скрипта проблема в том, что если вытесняются какие то данные то никакой ошибки мемкеш не возвращает и обработать такую ситуацию в скрипте невозможно. Примерно наблюдение - 15% фрагментация. ​
- +
-===== Почему rot.php выполняется так долго ===== +
- +
-Непосредственной работы там намного меньше конечно,​ однако в целях равномерного распределения нагрузки он работает минуту. Например,​ у нас стоит сграбить 3 галеры в минуту:​ скрипт грабит одну, спит 20 сек, грабит вторую - спист еще 20 сек, и грабит 3ю. Это помогает сделать нагрузку более равномерной. +
- +
  
 ===== Почему у меня в админке и на такой-то странице сайта тумбы стоят в разном порядке ===== ===== Почему у меня в админке и на такой-то странице сайта тумбы стоят в разном порядке =====
Line 294: Line 284:
  
  
-===== Как назначить разные категории разным тумбам одной гали ===== 
  
-По структуре скрипта тумбы - это свойства галеры,​ и категории это свойства галеры,​ а не тумб. Таким образом в текущем виде назначить категории тумбам - нельзя.+===== eval()'​d code =====
  
-Но существует обход этого ограничения - для этого надо тумбы ​одной галеры представить как тумбы разных галер. Такая возможность есть в Preload 2. Если вы выбираете разные группы для разных ​тумб ​одной гали ​скрипт создаст дубликаты как бы этой гали, но с разными тумбами, атким образом считая каждую тумбу отдельной галей. Минус в том, что если вывестив се тумбы без групп - на страницу могут попасть разные тумбы одной гали, тк сейчас скрипт считает что эти тумбы разных галер+Если при заходе на любую ​страницу у вас пишет что-то ​вроде "Parse error: some error, in /​some/​path/​scj/​tube/​index.php(0) : eval()'​d code on line 1717" - это ​100% значит что у вас ошибка ​в вашем пхп коде в темплейте.
  
-Проделать такую операцию ​с уже добавленными тумбами ​нельзя.+По опыту наиболее частой проблемой является несоблюдение ковычек. http://​smartcj.com/​wiki/​doku.php?​id=ru:​new_rotation_hints#​php_code_%D0%B2_%D1%82%D0%B5%D0%BC%D0%BF%D0%BB%D0%B5%D0%B9%D1%82%D0%B0%D1%85
  
  
-===== eval()'​d code =====+===== Crop Profiles ​=====
  
-Если ​при заходе на любую страницу ​у вас пишет что-то вроде ​"Parse error: some error, in /​some/​path/​scj/​tube/​index.php(0) : eval()'​d code on line 1717" ​- это ​100% значит что у вас ошибка в вашем пхп коде ​в темплейте.+Это наборы параметров для обработки тумб.  
 + 
 +Если ​вам надо ​размер только по одной сторонено вторую сторону ставим 0. Например, если указана ширина,​ а высота 0, то ширина будет фиксированной, а высота будет меняться под ​размер тумбы. Это актуально для сайтов типа пинтерест. 
 + 
 +Image Command ​- это ​команда которая применяется ДО того как сделана тумба. единственный параметр {FILE} - это текущая картинка. Например,  
 + 
 +  /​usr/​bin/​your_command -some_param {FILE} 
 + 
 +Thumb Command - аналогично только для уже сделанной тумбы.
  
-По опыту наиболее частой проблемой является несоблюдение ковычек. http://​smartcj.com/​wiki/​doku.php?​id=ru:​new_rotation_hints#​php_code_%D0%B2_%D1%82%D0%B5%D0%BC%D0%BF%D0%BB%D0%B5%D0%B9%D1%82%D0%B0%D1%85 
  
 +Face Detect - см [[FaceDetect]]
 ===== How to grab custom galleries ===== ===== How to grab custom galleries =====
  
Line 517: Line 514:
 Обратите внимание,​ что в этом случае таг total_items будет показывать просто кол-во галер на текущей странице. Обратите внимание,​ что в этом случае таг total_items будет показывать просто кол-во галер на текущей странице.
  
 +===== User Thumbs =====
 +
 +Допустим у вас в импорте много тумб, но трафа что бы их отротировать все недостаточно (так бывает в большинстве слеваев). Но хотелось бы оставить все тумбы для ролинга тумб. Для этого в импорте есть вариант с User Thumbs - смысл его в том, что указанные тумбы скачиваются,​ применяется кроп профайл,​ но в базе их нет, они сохраняются только на диске в каталог /​scj/​thumbs/​user_thumbs/​.
 +
 +  Те мы можем импортить как URL|THUMB_URL|USER_THUMBS
 +
 +Есть ньюанс - если в импорте нет возможности сделать 2 поля в тумбами,​ то можно импортить просто как URL|USER_THUMBS и How Many Thumbs from each gallery ?= Х. Таким образом все тумбы из этого поля будут сохранены на диск, а Х тумб будут добавлены в базу для ротации.
 +
 +Таким образом база не растет и не надо ротировать лишние тумбы.
 +
 +При этом надо понимать,​ что скрипт ничего не знает про тумбы которые сохранены в user_thumbs,​ поэтому для роллинга тумб у вас есть 2 варианта. Либо для каждой галеры кол-во тумб должно быть одинаковым,​ либо при роллинге скрипт ​ должен делать preload тумб для роллинга и таким образом понимать сколько их там всего.
 +
 +В темплейте урл к каталогу с юзер тумбами для данной галеры можно получить тагом ​
 +
 +  <​!--USER_THUMBS_FOLDER-->​
 ===== Multiniche trade ===== ===== Multiniche trade =====
  
ru/new_rotation_faq.1524731535.txt.gz · Last modified: 2018/04/26 08:32 by admin