jetty 9.3.8に組み込みJettyサーバーを設定している間、Jetty HttpConnectionの開閉を追跡するためにサーバーコネクタに接続リスナーを追加しています。Webサービスメソッドの実行後にjetty Http Connectionを閉じる方法
現在の要求を処理している突堤スレッド[qtp ..........]がHttpConnectionを開きます。現在のリクエストを終了したら、このHttpConnectionを閉じるように桟橋に通知します。私は、要求を処理してからしばらくして、異なるクライアントからのリスナーからのコールバックで開いているすべての接続の終了を確認します。
リクエストが完了すると、つまり特定のクライアントで完了したら接続を閉じる必要があります。
この場合、HTTP/1.1が使用されます。私はちょうど要求が処理されているスレッドを中断した場合、私は期待どおりにHttpConnectionの終了を参照してください。しかし、Jettyが他のリクエストに対して同じスレッド[qtp ..........]を割り当てると、http接続が閉じていて、httpクライアントでは「no http response」が表示されます。どうすればスレッドの割り込みフラグや要求間の他のデータをクリアすることができますか? –
あなたは接続と要求の処理のその部分をめちゃくちゃにするべきではありません。また、サーブレットコンテナ内のスレッドを中断すると、サーブレット仕様(およびJEE)では100%サポートされず、問題が発生することが保証されます。 –
私は9.2.8から9.3.8にアップグレードしています。以前のバージョンでは、要求が完了した後(居眠りの長いハートビートスレッドの場合)、桟橋のスレッドを中断して、低レベルを閉じるのを助けましたJetty Http Connections。しかし、この出力スレッドで割り込みを除去した後、システムは期待された性能を与えていません。これで私を助けることができるものは何でもあります。 –