バッファのチューニング
バッファのチューニング
続いてパラメータのチューニングを行います。
tc5-cluster-service.xmlにはJBossCacheが用いるJGroupsの設定が記述されています。「attribute name="ClusterConfig"」要素の「config」要素の下の「UDP」や「PING」といった各子要素が通信で用いられる各プロトコルをあらわしており、このプロトコル設定の集合をプロトコルスタックと呼びます。
JGroupsはプロトコルスタックのカスタマイズで任意の機能を実現できます。各々のプロトコル設定の詳細についてはJGroupsのサイト
(http://www.jgroups.org/javagroupsnew/docs/index.html)、およびJBossWiki(http://wiki.jboss.org/wiki/Wiki.jsp?page=JGroups)が参考になるでしょう。
このUDPの属性であるmcast_send_buf_size、mcast_recv_buf_size、ucast_send_buf_size、ucast_recv_buf_sizeはそれぞれマルチキャスト・ユニキャストを行う際のソケット通信のバッ ファサイズをあらわしています。このサイズを実際に送受信する情報量に応じて大きくすることでパフォーマンスの向上が期待できます。
今回は100KBより十分大きいサイズということで、500KBに設定しました。
tc5-cluster-service.xml:バッファのチューニング
ip_ttl="8" ip_mcast="true"
mcast_send_buf_size="500000" mcast_recv_buf_size="500000"
ucast_send_buf_size="500000" ucast_recv_buf_size="500000"
loopback="false"/>
(省略)
バッファのチューニング後のテスト結果
変更後のテスト結果は以下の通りです。

図5:バッファチューニング、1KB、レスポンスタイム

図6:バッファチューニング、1KB、スループット

図7:バッファチューニング、100KB、レスポンスタイム

図8:バッファチューニング、100KB、スループット
1KBではチューニング前とほとんど変わりませんが、100KBでは若干効果がみられます。バッファは大きめに設定しておいて問題ないでしょう。