私は、卒業プロジェクトに取り組んでいるコンピュータサイエンスの学生です。私のチームは、自動車レンタルシステムを構築しています。このシステムでは、ユーザーは特定の日付範囲で好きな車を予約してレンタルできます。レンタル期限が切れる数日前にユーザーに通知/メールを自動的に送信する「サーバー」を作成しようとしています。
現在、JavaScript と PHP を使用して、1 分ごとにデータベースをクエリして有効期限が近づいているかどうかを確認するタイムアウト関数を設定することで、これを実現できます。これを機能させるには、ブラウザーで Web ページを開く必要があるため、これはかなり愚かなことだと考えています。
教授から、リモート PC に「コンソール」のようなものを作成し、それをサーバーとして利用して、必要な作業を実行できることを知りました。しかし、その方法がまったくわかりません。また、これはマイルストーン プロジェクトであるため、教授はあまり協力してくれません。
私たちはフロントエンドとバックエンドに JavaScript と PHP を使用してプロジェクトを構築しています。一方、DB には MySQL を使用しています。
前もって感謝します。
よろしく、
ジェフ
答え1
教授は「コンソール」のことを言っていたようですプログラム「 – たとえば、ターミナルやコマンド プロンプトから起動するプログラムなどです。
このようなプログラムには特に特別な点はありません (もちろん、HTML ではなくプレーン テキストを出力することを意図しているという点を除いて)。実際、ほとんどの言語では、これらは文字通り、最初に使用する最も基本的なタイプのプログラムです。
PHP でもコンソールベースのプログラムを書くことができます。たとえば、 を含む .php スクリプトがあり<?php echo "Hello world!"; ?>
、それをターミナルから として実行する場合php Hello.php
、それはコンソール プログラムです。
コンソール ベースのプログラムは、定期的なタスクを実行するためにスケジュールに従って起動するか (Linux サーバーには「cron」機能があり、Windows サーバーにはタスク スケジューラがあります)、サーバーの起動からシャットダウンまで継続的に実行される「サービス」として起動できます。コンソールから実行できるスクリプトがあれば、サーバー管理者は、たとえば 1 時間ごとに実行するように「cron」ジョブを簡単に追加できます。
Moodle や SimpleSAMLphp などのいくつかの一般的な PHP ベースのアプリケーションには、実際に、管理タスクの場合は手動で、定期的なジョブ (通知など) の場合は cron 経由で、コンソールから実行することを目的とした .php スクリプトがいくつか付属しています。