AJAX リクエストの同期と非同期
-
20-08-2019 - |
質問
同期リクエストと非同期リクエストの間にパフォーマンス(速度の点)に違いはありますか?
非同期リクエストを使用する理由は何ですか??
解決
あなたは、ほとんど常に、実際に私はあなたがAjaxリクエストにいる場合は、クライアントに新しいJavaScriptファイルを埋め込み、その後、参照している同期のAjaxリクエストが使用されるべき程度しか場所を知って、非同期AJAXリクエストを使用する必要があります種類および/またはオリジナルのAjaxのリクエストからの戻りでそのJavaScriptファイルからのオブジェクト。そして、この新しいJSファイルのフェッチが(またはsanelyできる)、同期Ajaxリクエストを使用して含まれなければならない...
あなたが常にの非同期のAjax要求を使用する必要があること、次に、その他。最も重要な理由は、同期のAjaxリクエストは、UI(ブラウザ)を行うことで応答しない...
他のヒント
@Thomas Hansenの答えは正しいですが、利点を伴う明確な説明を見つけました Asynchronous
.
同期 これは単純ですが、サーバーの応答を待つため、一定期間呼び出し元の実行がブロックされ、リクエストの処理中は非同期よりも遅くなります。
非同期 の設定が必要な場合、リクエストの送信後に待たずにすぐに呼び出し元に制御を返すため、同期よりも高速になります。
質問にある両方の機能を備えたアップロードコントロールを使用する必要があり、この機能の長所と短所を調べているときにここに来ています。
もう一つを手に入れました リンク 実際の例を使って説明しました。(リンクは特定のツールなので、ロジックを理解してください)
主な違いは、サーバーからの応答時間です。アップロード時に、同期はファイルを検証し、リアルタイムでパスコードを作成します。非同期では、ファイルがサーバーのキューに送信され、処理されると電子メールで通知が配信されます。
同期は、ファイルがサーバーによって処理されるまで別のリクエストを送信するまで待つ必要があるため、複数の大きな CSV ファイルには理想的ではありません。大きなファイルの場合、サーバーが混雑しすぎてブラウザがタイムアウト エラーを返す可能性もあります。複数のファイルがある場合、非同期を使用すると、複数のファイルをサーバー キューに送信して、完了後に電子メールで受信して処理することができます。
..それは非常にデータベース集約型アプリケーションに来たときに、重大なパフォーマンスへの影響が原因があることができ、アプリケーション・データベースの集中と非常に多くを送っもしそうであれば非同期にする方が良い一度に要求。 ブラウザをasynchにそのセットはすべて無応答要求を失敗し、新しい一回で続けるとき..