2016-05-25 13 views
2

私はバネ統合を使用してtcpサーバを作成しました。優れたサンプルありがとうhttps://github.com/spring-projects/spring-integration-samples/tree/master/basic/tcp-client-server ユーザーがコンソールでqを押すと、サンプルサーバーは停止します。バネ統合tcpサーバのシャットダウン

TCPサーバはスタンドアロンのアプリケーションであり、要求を受け入れて応答を送信します。サーバーがバックグラウンドプロセスとして起動されている場合、コンソールへのアクセスが不可能なので、サーバーの正常なシャットダウンを追加したいと思います。

イベントを待つ方法はありますか? shutdownイベントが来たら、私はapplicationContext.stop()を呼び出すことができます。

整然としたシャットダウンプロセスに関するご意見をお寄せいただければ幸いです。

おかげで

答えて

1

私はあなたが話している「イベント」の種類がわからないが、あなたができることの数があります。

JMXを有効にすると、IntegrationMBeanExporterorderly shutdownを提供します。

TCPの場合、新しい接続の受け入れを停止し、新しい要求を破棄し、処理中の要求が終了するのを待つ時間を与えます)。

control-busを使用すると、着信エンドポイントに停止要求を送信できます。

telnet 123.123.123.123 
bar.stop() 

またはその他のメッセージング技術を使用して...別のTCPアダプタ -

制御バスメッセージのソースは、あなたが欲しいものである可能性があります。

また、OSを使用してJVMを強制終了することもできます。

+0

ありがとう、ゲイリー。それが私が探しているものです。 – kevin

関連する問題