Я студент-компьютерщик, работающий над своим дипломным проектом. Моя команда создает систему аренды транспортных средств. В этой системе пользователь может забронировать и арендовать понравившийся ему автомобиль на определенный период времени. Мы пытаемся создать «сервер», который будет автоматически отправлять уведомления/электронные письма пользователям за несколько дней до истечения срока аренды.
В настоящее время мы можем сделать это с помощью JavaScript и PHP, установив функцию тайм-аута, запрашивая базу данных каждые минуты, чтобы проверить предстоящую дату истечения срока. Мы как-то считаем, что это довольно глупо, потому что нам придется открыть веб-страницу в браузере, чтобы это сработало.
Мы узнаем от нашего профессора, что мы можем создать что-то вроде "консоли" на удаленном ПК, которая будет сервером, который будет выполнять нужную нам работу. Но мы понятия не имеем, как это сделать, и наш профессор не слишком нам помогает, поскольку это важный проект.
Мы строим наш проект с использованием JavaScript и PHP для фронтенда и бэкенда. В то время как для нашей базы данных мы используем MySQL.
Заранее спасибо.
С уважением,
Джефф.
решение1
Похоже, профессор имел в виду «консоль».программа«– например, программа, которую можно запустить через Терминал или Командную строку.
Ничего особенного в таких программах нет (кроме того, что они, конечно, предназначены для вывода простого текста, а не HTML); на самом деле, в большинстве языков они представляют собой буквально самый базовый тип программ, с которого можно начать.
На PHP также можно писать консольные программы — например, если у вас есть скрипт .php, содержащий , <?php echo "Hello world!"; ?>
и вы запускаете его через Терминал как php Hello.php
, то это консольная программа.
Затем консольные программы можно запускать либо по расписанию для выполнения периодических задач (серверы Linux имеют функцию «cron», серверы Windows имеют планировщик задач), либо как «службу» для непрерывной работы от запуска сервера до его выключения. Как только у вас есть скрипт, который можно запустить через консоль, администратор сервера может легко добавить задание «cron», чтобы оно запускалось, например, каждый час.
Несколько популярных приложений на основе PHP, таких как Moodle или SimpleSAMLphp, действительно поставляются с несколькими скриптами .php, специально предназначенными для запуска через консоль, либо вручную для административных задач, либо через cron для периодических заданий (например, уведомлений).