netcrusher java
1.0.0
Netcrusherは、JavaのTCP/UDPプロキシフレームワークであり、クライアントとサーバーの中央に配置できるコマンドラインツールであり、フェールオーバーの両側を確認できます。
NetcrusherはJava 8 NIOの上に構築されており、SLF4Jを除いて外部依存関係はありません。
ドキュメントを読んでください。
最新のdist.tar.gzをダウンロードして、コマンドラインツールを取得します。
NioReactor reactor = new NioReactor ();
TcpCrusher crusher = TcpCrusherBuilder . builder ()
. withReactor ( reactor )
. withBindAddress ( "localhost" , 10080 )
. withConnectAddress ( "google.com" , 80 )
. buildAndOpen ();
// ... some actions
// emulate reconnect
crusher . reopen ();
// ... check the client connection is reestablished successfully
// closing
crusher . close ();
reactor . close (); NioReactor reactor = new NioReactor ();
DatagramCrusher crusher = DatagramCrusherBuilder . builder ()
. withReactor ( reactor )
. withBindAddress ( "localhost" , 10188 )
. withConnectAddress ( "time-nw.nist.gov" , 37 )
. buildAndOpen ();
// ... some actions
// check data is sent
Assert . assertTrue ( crusher . getInner (). getReadDatagramMeter (). getTotal () > 0 );
// closing
crusher . close ();
reactor . close ();プロジェクトルートフォルダーで追加のサンプルをチェックします。
手動QAの場合、コマンドラインラッパーはTCPモードとデータグラムモードの両方で利用できます
$ ./run-tcp-crusher.sh 127.0.0.1:12345 google.com:80
# Version: 0.8
# Print `HELP` for the list of the commands
# enter the command in the next line
CLOSE
[20:19:20.586] INFO TcpCrusher </127.0.0.1:12345>-<google.com/64.233.161.101:80> is closed
[20:19:20.586] INFO Crusher is closed
# enter the command in the next line
OPEN
[20:19:21.655] INFO TcpCrusher </127.0.0.1:12345>-<google.com/64.233.161.101:80> is open
[20:19:21.655] INFO Crusher is open
Wikiのコマンドラインモードの詳細。
< dependency >
< groupId >com.github.netcrusherorg</ groupId >
< artifactId >netcrusher-core</ artifactId >
< version >0.10</ version >
</ dependency >wikiページを参照してください
Apacheライセンスバージョン2.0、http://www.apache.org/licenses/license-2.0.html