0

サーバー側とクライアント側のどちらを選択するのが最適ですか? 次のようなPHP関数があります。

function insert(argument)
{
   //do some heavy MySQL work such as sp_call
   // that takes near about 1.5 seconds  

}

この関数を約 500 回呼び出す必要があります。

for(i=1;i<=500;i++)
{
  insert(argument);
}

2 つのオプションがあります。

a) call through loop in PHP(server-side)-->server may timed out 
b) call through loop in JavaScript(AJAX)-->takes a long time.

3番目のものがあれば、最高のものを提案してください。

4

4 に答える 4

0

数十分実行されていたスクリプトがあった。私のソリューションは、タイムアウト1秒でAJAXを介して長いリクエストを行い、別のAJAXスレッドで結果をチェックしていました。ユーザーのエクスペリエンスは、ajax を使用せずに php からの応答を長時間待つよりも優れています。

$.ajax({
  ...
  timeout: 1000
})

于 2015-04-21T15:55:19.920 に答える
0

だから最後に私はこれを手に入れました。

a) 確実に完了するようにするには、AJAX を使用します。また、AJAX 呼び出しの間に定期的な応答が得られるため、ユーザー フレンドリーでもあります。

b) サーバーが途中で停止しないことがほぼ確実であり、クライアントの負荷を軽減したい場合は、サーバー サイド スクリプトを使用します。

今、私はサーバーサイドスクリプトを使用して、ユーザーのメッセージウィンドウを待っています。ユーザーは送信メッセージが成功するのを待ちます。最初の試行で成功する確率は 90 ~ 95% です。

于 2015-04-22T17:46:46.773 に答える