У меня возникла проблема следующего рода: есть файл с кодом, но этот файл просто лежит на сервере, и не вызывается пользователем. Так вот нужно чтобы без вызова пользователем этот файл постоянно находился в работе.
Не знаю как отнесутся модеры к ссылкам, чтобы было понятнее что и где, но вот:
chat.news34.ru - это чат, записывает сообщения в базу
news34.ru/chat_logs.php - а здесь код выдирает эти сообщения, пучкует по колличеству сообщений, и записывает это все в файл. Но этот файл не привязан ни к какому "самостоятельному двигателю" и поэтому не выполняется. Как дать этому коду "волшебного пинка"?
Спустя 37 минут, 40 секунд (13.06.2009 - 10:09) twin написал(а):
Крон.
Спустя 20 минут, 3 секунды (13.06.2009 - 10:29) asandp написал(а):
Цитата (twin @ 13.06.2009 - 07:09) |
Крон. |
?? крон? что это?
Помогите если не сложно кодом, мне такими терминами если я их не знаю вообще не понятно.
Плииз!
Спустя 46 минут, 56 секунд (13.06.2009 - 11:16) twin написал(а):
Цитата |
?? крон? что это? |
Как что? "Вошебный пинок".
Крон это такая штука (планировщик задач), которая сидит на сервере и запускает скрипты по заданному грфику. Допустим раз в минуту. Или час. Или месяц. Код тут не поможет, нужно изучить сам принцип (это довольно не сложно) и просто запрограммировать его. Если он конечно есть на хостинге. Обычно есть.
Спустя 40 минут, 34 секунды (13.06.2009 - 11:57) FatCat написал(а):
ИМХО, лучше таском:
На страницу chat.news34.ru/index.php добавляется код:
На страницу chat.news34.ru/index.php добавляется код:
HTML |
<img src="news34.ru/chat_logs.php" width="1" height="1" border="0" alt="<span style='color:orange'></span>"> |
Если посещаемость страницы высокая, а столь частое выполнение задания не требуется, можно сохранять time() последней отработки скрипта (например в файле или в БД), и при каждом обращении сверять текущее time() с записанным.
Спустя 20 минут, 57 секунд (13.06.2009 - 12:18) asandp написал(а):
Цитата (FatCat @ 13.06.2009 - 08:57) | ||
ИМХО, лучше таском: На страницу chat.news34.ru/index.php добавляется код:
Если посещаемость страницы высокая, а столь частое выполнение задания не требуется, можно сохранять time() последней отработки скрипта (например в файле или в БД), и при каждом обращении сверять текущее time() с записанным. |
да таких вариантов я много пересмотрел, наиболее перспективным из них был инклюд этого файла в файле текста чата, у которого постоянное обновление. но из за этого как то странно работал сам чат.
А так этот вариант тоже слабоватый как раз тем что посещаемость маленькая.
Вот только если так сделать в самом чате и правда можн опопробывать
Спасиб всем за идеи, ща буду пробывать...
Спустя 12 минут, 23 секунды (13.06.2009 - 12:30) asandp написал(а):
Обошелся кроном, списибо!
Спустя 41 минута, 23 секунды (13.06.2009 - 13:12) FatCat написал(а):
Я предпочитаю целевые таски.
Например, частота обращений к главной странице этого форума в 10 вечера составляет несколько десятков в минуту; в 4 ночи всего 1-2 в час.
Запрос генерации главной страницы довольно нагрузочный, а время истечения сессий все равно 15 минут.
Поэтому для главной страницы этого форума я сделал кеширование по условиям:
Читаем кеш-файл, в имени которого уже вписано время создания.
Если ( time() минус время создания файла < 900 ){грузим из кеша}
эльзе
{
удаляем файл кеша
выполняем запросы, генерим код главной страницы
сохраняем код в файл кеша с именем $file_name = time()."cache.board.tmp";
отдаем код по запросу
}
В Вашем случае
Например, частота обращений к главной странице этого форума в 10 вечера составляет несколько десятков в минуту; в 4 ночи всего 1-2 в час.
Запрос генерации главной страницы довольно нагрузочный, а время истечения сессий все равно 15 минут.
Поэтому для главной страницы этого форума я сделал кеширование по условиям:
Читаем кеш-файл, в имени которого уже вписано время создания.
Если ( time() минус время создания файла < 900 ){грузим из кеша}
эльзе
{
удаляем файл кеша
выполняем запросы, генерим код главной страницы
сохраняем код в файл кеша с именем $file_name = time()."cache.board.tmp";
отдаем код по запросу
}
В Вашем случае
Цитата (asandp @ 13.06.2009 - 10:32) |
код выдирает эти сообщения, пучкует по колличеству сообщений, и записывает это все в файл. |
я бы сделал так:
news34.ru/chat_logs.php сделал бы отображающим информацию.
Когда посетителю нужна эта информация - тогда ее и получит. Если есть вероятность, что запросы будут частыми - сделать кеширование.
news34.ru/chat_logs.php сделал бы отображающим информацию.
Когда посетителю нужна эта информация - тогда ее и получит. Если есть вероятность, что запросы будут частыми - сделать кеширование.