- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
При подключении функционала авторизации на сайте столкнулся с проблемой (теоретической) при использовании API Mail.ru vKontakte и т. п.
У них есть возможность транслировать действия пользователя в ленту "Что нового" от имени пользователя, то есть его действия на моём сайте.
Встал вопрос: если это делать синхронно, то есть при генерации страниц сайта, то интерпретатор PHP будет ждать пока отправится запрос на api.mail.ru получит ответ и только потом продолжит генерацию страницы. В этом случае возможны задержки, заметные пользователю.
Самым простым решением пришло в голову собирать очередь таких запросов в файл или таблицу mysql и по крону раз в минуту выполнять. Но я уверен, что существует и более элегантное решение.
Подскажите, что используют для решения этой и подобных задач?
Обычно так и делается.
В принципе, если никакой другой работы с очередью не предполагается (типа поиска и т.п.), а только добавление в конец и удаление из начала, то можно хранить её в файле.
;9068830']Обычно так и делается.
В принципе, если никакой другой работы с очередью не предполагается (типа поиска и т.п.), а только добавление в конец и удаление из начала, то можно хранить её в файле.
На самом деле я ищу универсальное решение, хочу использовать его и в других областях, например для почтовика, сервера обработки изображений и т. п. + возможность манипулировать задачами, например временем исполнения, установки задержек (с точностью до секунды/милисекунды), установка приоритета в очереди.
Время исполнения и приоритет можно сделать в мускуле, но задержки с точностью до секунды - нет.
На самом деле я ищу универсальное решение, хочу использовать его и в других областях, например для почтовика, сервера обработки изображений и т. п. + возможность манипулировать задачами, например временем исполнения, установки задержек (с точностью до секунды/милисекунды), установка приоритета в очереди.
Время исполнения и приоритет можно сделать в мускуле, но задержки с точностью до секунды - нет.
Универсального решения сделать не получится :) Получится только понять общее направление, в котором нужно двигаться, а допиливать под каждый конкретный случай придётся по-любому.
Задержку между "задачами" просто делайте в php-скрипте (sleep / usleep), чтобы не слишком яростно грузить API-шку.
Крон это теперь не элегантно?! Не ну нашли же слово то а.
Крон это теперь не элегантно?! Не ну нашли же слово то а.
Я не писал что крон это не элегантно, я написал что ищу более элегантное решение.
Возможно демон или библиотеку взаимодействующую с пулом операционки.
Я не писал что крон это не элегантно, я написал что ищу более элегантное решение.
Возможно демон или библиотеку взаимодействующую с пулом операционки.
Я чёт вообще не понимаю... а крон, это не демон чтоли?! Просто объясните, почему вам крон не подходит?
Я чёт вообще не понимаю... а крон, это не демон чтоли?! Просто объясните, почему вам крон не подходит?
Писал уже:
А про моментальное выполнение по мере поступления запросов я вообще молчу.
Тогда напишите своего "демона" на перле, который будет постоянно висеть, и раз в 5 секунд проверять, не появилось ли чего в очереди в БД.
Это ж несколько строк всего.
ИМХО вы строите проблему на пустом месте.
Сделайте тогда так, пусть будет крон, который будет считывать данные и писать в БД. А далее когда уже юзер попадает на страницу, то ему данные из БД отображаются, а обновляются напрямую по ajax-у.
[umka], Демона можно написать и на баше :)