Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

apache+jboss構成時のajax通信におけるリクエストタイムアウトについて

apache+jboss構成でのajax通信を想定しております。

この際の「リクエスト」タイムアウトについて、有識者の方の知識を拝借できればと思います。

ajax通信時の際は、apacheのリクエストタイムアウトはきかなくなるのでしょうか?

リクエストタイムアウトをきかせたければ、ajaxのtimeoutを必ず指定する必要があるのでしょうか?




7

回答

75313

閲覧

7件の回答

評価

0

Javaの話じゃないんだが…。
Ajaxというのはブラウザ特有の話で、ブラウザ以外からのリクエストにはそもそもそんな区分けすら存在しない。
ブラウザでのリクエストの扱いの違いで、サーバ側にはなんの関係もない。
だからサーバ側でページ遷移とAjaxとを区別するならその仕組みは自分で決める必要があるし、区別しないで良いなら考える必要もない。

評価

0

ご回答ありがとうございます。

>Javaの話じゃないんだが…。
その通りですね。。。申し訳ありません。
ただ、折角ですのでもう少しお付き合いお願いできますでしょうか。

ご回答頂いた内容はよくわかりました。
私の知識不足で申し訳ありませんが、となると私の質問が悪かったかと思います。

現在はjavascriptとJAVAとなっており、POSTでやり取りしています。
この場合、サーバー側で時間がかかるとapacheのリクエストタイムアウトに引っ掛かってしまうと思いますが、
ajaxで非同期通信にすると、apacheのリクエストタイムアウトには引っ掛からなくなるのか?
が知りたいことで御座います。


評価

0

ご説明に少し補足させて頂きます。
認識に誤りがありましたらご指摘下さい。

サーバー側の処理につきましは、javascriptのPOSTでやり取りしていた受け口をajax通信用に変更するだけの想定です。

ajaxで非同期通信となると、私の持っているイメージとしては、クライアントからのリクエストに対するレスポンスはすぐに返ると思ってますのでリクエストタイムアウトには引っ掛からないと思っております。

クライアント側は画面をすぐ触れるようになり、その間もサーバー側は処理が動いていて、完了したらajaxのdoneで受ける認識です。

評価

0

「よくわかりました」とは思えないんだが…。

表現を変えてみよう。
「同期」「非同期」というのはブラウザの中の話で、サーバには何の関係もない話だし知るすべもない。
知るすべがないのになんで引っかかる、引っかからないが変わると思えるのか?

評価

0

>私の持っているイメージとしては、クライアントからのリクエストに対するレスポンスはすぐに返ると思ってます
そうか、ここを誤解してるから、そういう話になるんだな。
「すぐに返る」のはJavaScriptのsend()だよ。サーバではなくクライアント。
send()の次以降の行が、サーバへのリクエスト処理と同時に(場合によっては先に)実行されるのが非同期であり、レスポンスを受け取るまで待って実行されるのが同期。

評価

0

ご回答ありがとうございます。
よく理解ができておらず申し訳ありません。

クライアント側の話となるため、サーバー側とは切り離して考えないといけなかったのですね。

タイムアウトについては、サーバー側がリクエストをタイムアウトまでに返すか否の話であって、クライアントが同期か非同期かは関係ない話ということなのですね。

確証を得たかったのは結果、タイムアウトにはなるのか、ならないのか。なので、クライアント側が非同期だろうがタイムアウトにはなる。と解釈致しました。

もし、認識違いあればご指摘下さい。

評価

0

合ってる。
人間に置き換えてみればすっきりするんじゃないの?

A君がB君に仕事を頼む。
・A君の次の仕事はB君の仕事が終わらないとできないので、A君はひたすら待ってる。
・A君の次の仕事はB君の仕事とは関係なくできるので、A君はその仕事に取りかかる。
B君が時間切れするかどうかはA君の状況とは関係ないよね。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。