0

リモートサーバーが呼び出して、ローカルサーバーで一連の機能を実行する、つまり新しいユーザー/アカウントを追加するAPIがあります。

このスクリプト内には、リモート サーバーに応答を電子メールで送信する前に 3 分間待機するように設定された「sleep(180)」があります。

遅延が必要ですが、サーバーへの最初のリクエストの後のリクエストが処理されていないようです。「sleep(180)」がサーバーへの他の呼び出しを停止しているようです。

接続ベースで動作しませんか?したがって、すべての接続は、その1つのapi.phpへのすべてのリモート呼び出しではなく、影響を受けるだけですか?

私は調査しましたが、上記の動作に対する答えは見つかりませんでした。その場合、唯一の解決策は、受信した新しいアカウント要求を記録し、mysql の「スケジューラ」データベース テーブルに入れることだと思います..そしておそらく、1〜2分ごとに実行され、新しいレコードをチェックしてから応答を送信するcronがあります。この方法では、他の呼び出しが停止することはありません。

何が起こっているのかを証明/反証するものを見つけることができないように見えるので、この問題に関する意見をいただければ幸いです。

4

1 に答える 1

1

「Lawrence Cherone」のコメントによると、最良の方法は、スケジューラ/キュー システムをセットアップし、cron または別のプロセスがそれを介して動作するようにすることです。

于 2012-10-22T01:20:26.847 に答える