ぐらめぬ・ぜぷつぇんのはてダ(2007 to 2011)

2007年~2011年ごろまで はてなダイアリー に書いてた記事を引っ越してきました。

Echoサーバ・クライアントのサンプル集とThreadButterをCodeReposにUPしました。


ソケットで電文をやり取りするシステムに関わる機会が多くて、その度に対向器を作る為に「えーっと、JavaでEchoサーバの実装は・・・」とWebで調べます。

というわけで、Javaのソケットで対向器を作る時のベースとなるEchoサーバ・クライアントのサンプル集をUPらせて頂きました。

http://coderepos.org/share/browser/lang/java/echo_samples

"act1" - "act6"位までは相当古いです。2004年・・・って新人の時か。2004/12頃に実装してみた時のですね。この時点ではBufferedReaderやBufferedWriter使って一行単位で読み書きするのしか作れませんでした。
"act7"は先日、見よう見まねで java.nio.channels 使って非同期入出力でサーバ側を実装してみた例です。これでようやく、サーバ側での「READ TIME OUT」を実装できました。


"ThreadButter"というのは、某所の仕事絡みで単純なHTTPのPOSTメソッドを大量に投げる必要が生じた時に作ったツールで、複数のスレッドを使って同時に多重実行する為のフレーム・・・のつもりなのですがいかんせんJavaのThreadについて理解が浅いです。
POSTデータをCSVで用意しておき、それを複数のスレッドに振り分けて一斉にPOSTを開始する・・・みたいな使い方です。
格好良く言うと、WebAPIに負荷をかける為のツールでした。
勿体ないのでUPしておきます。