Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
 Аватар для Alexodiy
6 / 6 / 2
Регистрация: 22.02.2017
Сообщений: 125

Обработка 10 000 статей. Задержка между интерациями в цикле + крон

11.10.2021, 10:05. Показов 876. Ответов 9

Студворк — интернет-сервис помощи студентам
Доброго времени суток, уважаемые форумчане

Объясню ситуацию... в базе данных есть 10к+ статей и их количество постоянно увеличивается. Мне их надо обрабатывать по крону внося изменение в БД. В файле, который запускаю, статьи обрабатываю через foreach. Соответственно, слишком много записей и таймаут сервера не тащит конечно же такой цикл.

Что я хочу узнать?

1. Как сделать задержку между интеграциями в цикле (foreach или while), чтобы тайм-аут сервера не отправил скрипт в небытие. Например, скрипт обработал 20 статей, перекурил и обработал следующие 20.

2. Буду благодарен, если покажете пример.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.10.2021, 10:05
Ответы с готовыми решениями:

Задержка в цикле на С
Доброго времени суток! Подскажите как в консольном Борланде на С сделать пацзц в цикле, что бы выводимая информация была читабельна?

Задержка в цикле
Мне надо узнать в какую сторону пользователь больше провёл пальцем, для этого использую скрипт: switch (event.getAction()) { ...

Задержка в цикле for
Здравствуйте. Имеется вот такая вот рабочая подпрограмма : void led_per(uint16_t n_led) { ...

9
Супер-модератор
Эксперт JSЭксперт HTML/CSSЭксперт PHP
 Аватар для gogolik
3963 / 2081 / 832
Регистрация: 13.03.2010
Сообщений: 6,860
11.10.2021, 10:17
Уже была подобная тема от ТСа - Как обработать 10к+ постов по крону
При ответе нужно учитывать, что он работает с WP.
1
 Аватар для Alexodiy
6 / 6 / 2
Регистрация: 22.02.2017
Сообщений: 125
11.10.2021, 11:26  [ТС]
Цитата Сообщение от gogolik Посмотреть сообщение
Уже была подобная тема от ТСа - Как обработать 10к+ постов по крону
При ответе нужно учитывать, что он работает с WP.
Да, я задавал аналогичный вопрос в разделе WP, но там конкретное решение, временное. Я сейчас спрашиваю не за WordPress, а в целом как обработать большой цикл. В данном вопросе я не учитываю WP.
0
1308 / 1000 / 232
Регистрация: 01.10.2018
Сообщений: 3,894
11.10.2021, 11:37
Нужно использовать CLI-скрипт. Более сложные конструкции, взаимодействующие с пользователем через Web, описывать долго и дорого.

Добавлено через 3 минуты
Цитата Сообщение от Alexodiy Посмотреть сообщение
Мне их надо обрабатывать по крону внося изменение в БД. В файле, который запускаю, статьи обрабатываю через foreach. Соответственно, слишком много записей и таймаут сервера не тащит конечно же такой цикл.
Какое отношение крон имеет к (Web-)серверу?
1
 Аватар для Alexodiy
6 / 6 / 2
Регистрация: 22.02.2017
Сообщений: 125
11.10.2021, 12:11  [ТС]
Цитата Сообщение от estic Посмотреть сообщение
Нужно использовать CLI-скрипт. Более сложные конструкции, взаимодействующие с пользователем через Web, описывать долго и дорого.

Добавлено через 3 минуты
Какое отношение крон имеет к (Web-)серверу?
Хорошо, давайте без крон... переформулирую немного... Как выполнить php файл с большим циклом foreach, чтобы между интеграциями была задержка и таймаута не было? Может sleep() юзать или как?
0
1308 / 1000 / 232
Регистрация: 01.10.2018
Сообщений: 3,894
11.10.2021, 13:08
Для CLI-скриптов по умолчанию нет таймаута. Если вас как-то ограничивает в этом плане провайдер, найдите другого или используйте VPS.
1
 Аватар для Alexodiy
6 / 6 / 2
Регистрация: 22.02.2017
Сообщений: 125
11.10.2021, 13:10  [ТС]
Цитата Сообщение от estic Посмотреть сообщение
Для CLI-скриптов по умолчанию нет таймаута. Если вас как-то ограничивает в этом плане провайдер, найдите другого или используйте VPS.
Спасибо. Я понял. А без CLI-скриптов как например вывести цикл большой
0
1308 / 1000 / 232
Регистрация: 01.10.2018
Сообщений: 3,894
11.10.2021, 13:16
Никак. Разбивайте на порции, как вы это делали. И запускайте их обработку отдельными запросами с клиента. Или кроном с большой частотой.
1
 Аватар для Alexodiy
6 / 6 / 2
Регистрация: 22.02.2017
Сообщений: 125
11.10.2021, 13:18  [ТС]
Цитата Сообщение от estic Посмотреть сообщение
Никак. Разбивайте на порции, как вы это делали. И запускайте их обработку отдельными запросами с клиента. Или кроном с большой частотой.
Спасибо
0
1308 / 1000 / 232
Регистрация: 01.10.2018
Сообщений: 3,894
11.10.2021, 13:21
Дополню. Для крона, естественно, "границу обновляемости" нужно хранить, например, в той же базе данных. А вот просто для CLI- можно использовать для этого изменяемую строку параметров (как для Web-а строку запроса и т.п.).
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.10.2021, 13:21
Помогаю со студенческими работами здесь

Задержка в цикле
Здравствуйте! Помогите пожалуйста разобраться: Есть бесконечный цикл, который берет информацию через промежутки времени и сравнивает...

Задержка в цикле
Здравствуйте, код должен по очереди выдавать результаты каждого объекта, но хотелось бы это реализовать с задержкой. На один раз я...

Задержка в цикле
Имеется цикл, в котором отрисовываются линии, соединяющие вершины графа. К примеру, у меня 5 вершин, их нужно соединить дугами динамически,...

Временная задержка в цикле
Здарова,нужно сделать задержку в цикле for для отрисовки трапеции,которая двигается вдоль линии. System.Threading.Thread.Sleep(50); не...

Вывод в цикле массива статей из базы данных
Есть класс get_content. Написал такой вывод, пока вывожу в виде массива, ничего не выводится. Посему два вопроса: как правильно в данном...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru