Альтернативы крону

Я делаю сервер рабочий Сервер Ubuntu 12.04 и Apache. У пользователей есть непрерывные обновления в динамическом, пролистывает сценарий Java, загружение файлов JSON через Ajax запрашивает к серверу. Всем пользователям нужны те же данные, обеспеченные файлом PHP от вторичной базы данных MySQL. Для сокращения сервера загружаются, я решил обновить файл JSON каждую секунду и сохранить их в сервере если их как статическое содержание (как txt файл). Поэтому мне нужно решение выполнять PHP или любой другой сценарий языка на сервере каждую секунду.

Для будущей необходимости я не могу реализовать логику как: скомпилируйте JSON в первом запросе и сохраните их сохраненными для других запросов в ту же секунду.

Я читал о CronTab в Ubuntu, но это не позволяет мне выполнять код каждую секунду. Я жесткий об изменении всего Крона кодирую, потому что я не могу найти другие решения.

Кто-то знает, существует ли какое-либо решение в Ubuntu или возможно в кодах Apache, чтобы сделать это? Мне нужно что-то стабильное и надежное. Кто-то когда-либо слышал о системе для выполнения кода сервера без необходимости запросов; управлять данными каждую секунду?

Любое предложение приветствуется даже комплекс, но для надежного результата!

0
задан 19 September 2014 в 05:23

1 ответ

Я понятия не имею, что Вы сказали в первых двух абзацах, таким образом, я не могу сказать, существует ли лучшее решение (мой крик инстинктов должно быть).

Для выполнения команды в интервалах X-second существует много опций, обсужденных в этом вопрос о Переполнении стека и этот Unix & вопрос о Linux .

<час>

Выполнение команды спустя секунду после того, как предыдущие концы команды

Проще говоря, используют сценарий как это:

#! /bin/bash
while sleep 1
do
   # your commands
done

Выполнение команды спустя секунду после предыдущей команды запускается

То же как выше, но Вы отправляете команду в фон. Это приведет к перекрывающемуся выполнению команды, если команда займет больше времени, чем 1 секунда для завершения.

#! /bin/bash
while sleep 1
do
   (# your commands )&
done
<час>

Теперь, чтобы удостовериться, что сценарий работает, использование Новомодное задание :

description "a good description"
start on runlevel [!016]
stop on runlevel [016]

respawn

exec /path/to/the/above/script

Сохраняют, это к .conf файл в /etc/init, такой как /etc/init/some-job.conf. Теперь можно запустить сценарий с:

service some-job start

respawn опция заставит Выскочку перезапустить сценарий, если это когда-нибудь будет выходить (это не было должно).

1
ответ дан 7 October 2019 в 02:10

Другие вопросы по тегам:

Похожие вопросы: