2016-08-26 7 views
1

リモートサーバーからデータを取得するWSクライアントを開発しています。 WSDLファイルを介してサーバーにアクセスするオブジェクトをビルドするためにEclipseを使用しました。私は自分のPCからコードを実行するとうまく動作します。パフォーマンスは、私が持っているネットワーク接続などを考えればわかります。Eclipse Java SOAPはLinuxでは極端に遅いが、PCではうまくいっている

JARをエクスポートしてLinuxサーバから実行すると、最終的に実行され、各呼び出しには約2分かかります。

私たちのネットワーク担当者はいくつかのパケットキャプチャを行い、最初の接続確立からのPOSTとACKを確認し、120秒以上のアクティビティがないと、要求パケットがサーバに送信され、

呼び出しをブロックするものがあるようですが、コードはPCとサーバーの両方で同じです。

誰も同じような問題を抱えていますか?私がアクセスできないサーバーは、Windowsベースのサーバーであり、クライアント側はLinuxサーバーです。

単にIDEからそれをデバッグしようよりも、デバッグモードでアプリケーションを実行できる場合、120以上秒

  "main" #1 prio=5 os_prio=0 tid=0x000000000f2b6000 nid=0x5776 runnable [0x00002ae42ae1d000] 
    java.lang.Thread.State: RUNNABLE 

答えて

0

などにsocketRead0でブロックされているように見えるjstackに応じて - Remote debugging a Java application

ない場合 - jstack: Target process not responding
そして、待機中に何が起こっているかを分析 - - スレッドダンプを作成するための操作をお願いしHow to analyze a java thread dump?

+0

私はjstackに行きます、それはsocketRead0呼び出しでぶら下がっています。それはjstackからだけでなく、すべてのデータが受信されたにもかかわらず、リモートが接続を閉じるまで、ネットワークエンジニアが接続がブロックされていることを確認しているように見えます。 – tpeter60

関連する問題