Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Поэтапное выполнение "нагрузочных" скриптов

Форум для авторов модов для phpBB 3.0.x. Здесь можно попросить помощи в разработке у коллег.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Поэтапное выполнение "нагрузочных" скриптов

Сообщение Shredder »

Такой вопрос: поддерживает ли Cron поэтапное выполнение "тяжёлых" скриптов, требующих создание в несколько этапов? Пример - различные репарсинги и пересоздание "очищенных имён" в STK.

Суть метода в том, что выбирается ограниченное число данных из БД, выполняется какое-то действие над этими данными, затем происходит редирект скрипта на самого себя при помощи meta_refresh и выбирается/обрабатывается новый кусок данных, начиная с того места, где остановились на предыдущем шаге, и этот цикл продолжается до завершения обработки всех данных в объёмной таблице.

Назначение метода: избавление от

И самый главный вопрос: возможно ли автоматическое выполнение подобных скриптов каким-либо способом, и если да, то каким? Или их обязательно придётся запускать вручную? Нужно для развития мода карты сайта: Карта сайта для ботов - phpBB3 SEO Sitemap, чтобы приспособить его под "большие" форумы.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение rxu »

Shredder
Крон - такой же скрипт, как и любой другой. Одно только "но" - мета-теги тут нерелевантны, ибо скрипт выполняется не в браузере, а в фоне.
Исходя из этого, можно сделать просто - записывать номер шага в БД, а при очередном вызове в зависимости от этого значения исполнять то или иное действие.
Изображение
Anvar
Former team member
Сообщения: 1965
Стаж: 14 лет
Благодарил (а): 67 раз
Поблагодарили: 799 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение Anvar »

Тоже заметил что карта сайта обновляется разом по всем форумам. Было бы не плохо научить её обновляться для каждого форума в отдельности, поэтапно и не надо было бы создавать дополнительных таблиц.

Можно к примеру выполнить обновление одного форума при первом посещении, при следующем следующий. Либо ограничить по количеству карт за раз, но это уже технически как пойдёт..
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение Shredder »

Anvar писал(а):Было бы не плохо научить её обновляться для каждого форума в отдельности
Теперь представим ситуацию, когда в одном форуме 500 тыс. сообщений и у юзера слабый хостинг. Дальше без комментариев)
Anvar писал(а):и не надо было бы создавать дополнительных таблиц.
Дополнительных таблиц в карте нет и не предвидится. Чтобы записать номер шага в БД, - как я понимаю, достаточно будет записать его в таблицу config.
Anvar писал(а):Можно к примеру выполнить обновление одного форума при первом посещении, при следующем следующий. Либо ограничить по количеству карт за раз, но это уже технически как пойдёт..
Зачем такие сложности? По крону гораздо проще.
Про количество карт за раз не понял.
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение Shredder »

rxu писал(а):Крон - такой же скрипт, как и любой другой. Одно только "но" - мета-теги тут нерелевантны, ибо скрипт выполняется не в браузере, а в фоне.
Исходя из этого, можно сделать просто - записывать номер шага в БД, а при очередном вызове в зависимости от этого значения исполнять то или иное действие.
Я так понимаю, что очередной вызов cron будет осуществляться при следующем открытии форума в браузере какого-либо пользователя? Если да, то этот вариант неприемлем, потому что таких "ступеней" может понадобиться добрая сотня (или ещё больше), и карта будет создаваться несколько дней. А если форум малопосещаем, то и недель. Нужна полноценная замена выполнению скрипта в браузере, но чтобы всё это выполнялось без какого-либо участия браузера. Похоже, что это невозможно?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение rxu »

Возможно в 3.1, где крон можно запустить в системный планировщик.
Изображение
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 10 месяцев
Благодарил (а): 152 раза
Поблагодарили: 215 раз
Забанен: Бессрочно

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение xisp »

Shredder писал(а):но чтобы всё это выполнялось без какого-либо участия браузера.
Собственно, можно использовать
rxu писал(а): системный планировщик.
phpBBex
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение Shredder »

rxu писал(а):Возможно в 3.1, где крон можно запустить в системный планировщик.
Что такое системный планировщик и где можно о нём почитать?
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 13 лет 11 месяцев
Откуда: Сергиев Посад
Благодарил (а): 374 раза
Поблагодарили: 727 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение владимир1983 »

Cron
Крон выполняет какое либо задание, например запуск скрипта по расписанию.

Добавлено спустя 59 секунд:
Админ раздел > Настройка сервера > Выполнять периодические задачи через системный планировщик (cron)
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение Shredder »

владимир1983
Это всё понятно, что такое cron я знаю, он был и в 3.0.x. Только непонятно, каким способом это может помочь создать карту при описанных выше условиях.
Если речь о том, чтобы настраивать что-то на сервере, то этот вариант непригоден, т.к. доступа к серверу почти ни у кого из обычных админов форумов нет.
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 13 лет 11 месяцев
Откуда: Сергиев Посад
Благодарил (а): 374 раза
Поблагодарили: 727 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение владимир1983 »

Ну тогда вещай крон задачу, в данном случае генерацию и обновление карты на системный phpbb cron.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение Shredder »

Крон в phpBB 3.1 работает без участия пользователей?
Чтобы не было проблемы, описанной здесь: Поэтапное выполнение "нагрузочных" скриптов
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 13 лет 11 месяцев
Откуда: Сергиев Посад
Благодарил (а): 374 раза
Поблагодарили: 727 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение владимир1983 »

Shredder писал(а):Крон в phpBB 3.1 работает без участия пользователей?
Не представляю себе. Но что то мне подсказывает что как и в 3.0.12 требуется обновление страницы для запуска крон операций.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 10 месяцев
Благодарил (а): 152 раза
Поблагодарили: 215 раз
Забанен: Бессрочно

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение xisp »

Shredder писал(а):Крон в phpBB 3.1 работает без участия пользователей?
По умолчанию так же, как и в 3.0, то есть вызовом пользователей.
Shredder писал(а):т.к. доступа к серверу почти ни у кого из обычных админов форумов нет.
Многие дают доступ к настройке cron. Даже на прости господи бесплатном хостингере есть крон.
phpBBex
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Поэтапное выполнение "нагрузочных" скриптов

Сообщение rxu »

Shredder писал(а):Крон в phpBB 3.1 работает без участия пользователей?
Есть 2 варианта. Первый - крон работает как всегда, при посещении пользователями страниц.
Второй - задача может быть добавлена в системный крон (т.е. прямо в ОС) благодаря наличию phpBB CLI.

Добавлено спустя 29 секунд:
Сорри, второй вариант - только для 3.1.
Изображение
Закрыто

Вернуться в «Для авторов (phpBB 3.0.x)»