2016-04-18 12 views
1

いくつかの調査の後で、私は達成しようとしているもののためのanwersを見つけませんでした。 私はphp sleep()関数に関するいくつかの情報とCRONジョブに関する情報を見つけましたが、これらのオプションのどれも問題を解決していないようです。Webhookを受信して​​から待ってください

私は何をしようとしています:Webフックを受け取るかもしれないPHPファイルがあります。このウェブフックに「反応する」までにある程度の時間(例えば15分)を待つ必要があります。だから、基本的には、私のスクリプトが必要です。 1 - 2(すでに現在のコードで行う)ウェブフックを受け取る - いくつかの時間 3を待つ - いくつかのアクションを実行します(まだ行って)

私はすでに、私はせずに必要なものをやりました待っている部分、それは非常にうまく動作します。私はそれをどうするかわかりません...

私がそれをよく理解すれば、Cron Jobsは定期的に実行されますが、ウェブフックが受け取られる。 私はsleep()関数について考えましたが、多くのリソースを使用するかもしれません...

どうすればいいですか?

更新:私が30秒以上がスリープ機能を使用することはできませんようだ

+0

私は睡眠機能が実際にあなたが必要としていると思う –

+0

ありがとう。しかし私の更新を見てください:私は30秒以上の値を使用すると、スクリプトの最後は実行されません... –

+0

また、あなたのWebhookを持っている時間を保存するために時間()関数を使用することができます。 while(time()

答えて

1

私はあなたでしたが、Webhookが入ったらデータベースの行が挿入されるようにキューイングシステムを構築しました。私は 'execution_time'の列を追加し、webhookが入ったときから15分に設定します。その後、毎分実行されるcronジョブをセットアップできますが、execution_timeが '今'の場所でのみ起動します。

+0

あなたの答えをありがとう。どうやってこれをやるのか少し説明してください。特にcronの仕事の部分...(私は、それは毎分実行すると、多くのリソースを使用しますか?)とにかくおかげで、それは最高の選択肢と思われる... –

+0

それは近くに何も使用されません同じスクリプトの複数のインスタンスをメモリー内に保持し、実行前に一度に15分間リソースを使用します。毎分Cronジョブを実行することは非常に正常です。あなたのウェブフックが何をしているのか分からなければ、それ以上の説明はできません。 – H2ONOCK

+0

これは私が聞く必要があった(よく、実際に読む...)。私はそれをできるだけ早く試してみましょう、ありがとう! –

0

使用するcron

(最大実行時間が、私は推測するの?)「毎時ごとに15分で。」

Minute Hour Day Month Weekday Command 

15  *  * *  *  php /homelink/path/filename.php 

注:

あなたが設定することができますcronの電子メールアドレス。すべてのトリガーは電子メール通知を送信します。電子メールを受信するとcronが動作していることを示している場合は、コードを確認する必要があります。また、適切なエコーを使用してデバッグすることもできます。

+0

返信ありがとうが、webhookが受信されない場合でも毎時間実行されませんか?スケジュールされた時間の1分前にウェブフックを受け取った場合はどうなりますか? –

関連する問題