サーバーのバックグラウンドプロセスでスクリプトを実行していますか?

可能重複:
  リモートからデータを取り出すためのPHP Curlスクリプト10分ごとにサーバー

私の友人のウェブサイトには、ニュースフィード用のXMLジェネレータがあります。私はそこからデータを読んで、私のウェブサイトでそれを使用しています(私はそれを行う許可を持っています)。しかし、私は管理パネルの下でその仕事のためのスクリプトを持っているので、私は手動でそれを呼び出す必要があり、処理が完了するまで待ってください(私のブラウザを閉じることはできません)。素晴らしいことですが、問題は30分ごと(または1時間ごと)にデータベースを更新する必要があり、毎日24時間コンピュータを操作することができないということです。

私は今、サーバー側でこのプロセスを自動化するためにできることがあるのだろうかと疑問に思っています。一言で言えば、私のスクリプトを30分ごとに実行し、コンピュータの前に自分の物理的な存在なしにその仕事をする、私のサーバ上で何らかの種類のスケジューラを実行したい。

私はこれについてまったく経験しておらず、実際にこの問題の解決策を見つけるためにどこを探すべきか分からない。それは可能なのか分かりませんか?

だから私が答えとしてここに必要なのは、いくつかの提案やリンク、あるいは私の問題の解決策を見つけるのに役立つものです。それは緊急ではなく、私は学ぶのに多くの時間があります。検索を開始する場所を教えてください。

申し訳ありませんが、これは重複した質問ですが、使用する検索用語がわからず、探しているものがまだわからないため、何も検索できませんでした。

私は本当に何か提案を感謝します。

0
cron を試しましたか?
追加された 著者 cppcoder,
いいえ、しかし私はそれに行きます。ありがとう
追加された 著者 Wh1T3h4Ck5,

2 答え

あなたが探しているのは、 cron (引用)/em>:

Cronは、Unixライクなコンピュータで動作する時間ベースのジョブスケジューラです   Cronはユーザーがジョブをスケジュールできるようにします。(コマンドまたはシェル   スクリプト)を定期的に実行することができます。
  システムの保守や管理を自動化するためによく使用される...

3
追加された
これらのジョブをPHPから「制御」したいのであれば、あなたのPHPパネルにデータベース(どのジョブをアクティブにするか、いつ実行すべきかを保存する) 、毎分実行されるcronジョブを実行し、データベースによって指示されたジョブを実行します。
追加された 著者 Pascal MARTIN,
はい、それは私が提案したもののようなものです:-) ;;あなたが考えなければならないことの1つは、1つのジョブが同時に実行されないことを確認することです(すでに実行中で、終了していない場合は、cronジョブで再起動したくないかもしれません) i>
追加された 著者 Pascal MARTIN,
(悪い考えではありません)データベースの「進行中」フラグについては、スクリプトが(致命的なエラーのように)クラッシュする可能性があることを忘れないでください 、フラグの設定を解除しない
追加された 著者 Pascal MARTIN,
ありがとうございます。私はcronについてほとんど研究をしませんが、この説明によれば、私は必要なもののように聞こえます。以前はcronについて聞いたことがありますが、それには絶対に入りませんでした。
追加された 著者 Wh1T3h4Ck5,
PHPからcronジョブを制御できますか?それを管理パネルに統合して、スケジュール変更の時間を開始/停止させたいと思います。その使い方を学び実践する前にちょっと驚いています。
追加された 著者 Wh1T3h4Ck5,
後で、cronについて読むと、私はcronがどのように動作するかを知った(「制御」の質問は私にとっては本当に馬鹿だった)。私があなたが言ったことを理解していれば、オン/オフ/開始時間/終了時間フラグを持つジョブテーブルのようなものを作成し、サーバ時間と一致する条件があればcronを使用して毎分チェックすることをお勧めします。もしそうなら、それはうまくいくかもしれません。ありがとう。
追加された 著者 Wh1T3h4Ck5,
はい、私はそれについて考えていましたが、最善の方法は、進行中の状態フラグをデータベースのどこかに設定し、ジョブが終了した後にそれを削除し、スクリプトが起動するときにチェックしておくことです。私はまだcronで十分な経験がないので、うまくいくかもしれません。とにかくありがとう。
追加された 著者 Wh1T3h4Ck5,

You could use curl in order to do the job you are doing right now in your browser, and after that, put that command in cron

1
追加された
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com