43.4. トランスポート設定のチューニング
- TCP バッファーサイズ。高速なネットワークと高速なマシンでは、TCP 送信および受信バッファーサイズを増加させてパフォーマンスを向上させることができます。詳細については、14章トランスポートの設定 を参照してください。
注記
Linux の最近のバージョンなどの一部のオペレーティングシステムには TCP 自動チューニングが含まれ、TCP バッファーサイズを手動で設定することにより、自動チューニングが動作することを回避できますが、実際にはパフォーマンスが低下します。 - サーバーでファイルハンドルの制限を増加します。サーバーでたくさんの同時接続が期待される場合、またはクライアントが接続を素早く開いたり、閉じたりする場合は、サーバーを実行しているユーザーが、十分なファイルハンドルを作成するパーミッションを持つようにしてください。これは、オペレーティングシステムによって異なります。Linux システムの場合は、ファイル
/etc/security/limits.confで、オープン可能なファイルハンドルの数を増やします。たとえば、以下の行を追加します。serveruser soft nofile 20000 serveruser hard nofile 20000
serveruser soft nofile 20000 serveruser hard nofile 20000Copy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、ユーザーserveruserが最大 20 000 個のファイルハンドルを開くことができるようになります。 - 非常に小さいメッセージでスループットが最大になるように
batch-delayを使用し、direct-deliverを false に設定します。HornetQ では、事前定義されたコネクターとアクセプターのペア (netty-throughput) がJBOSS_DIST/jboss-as/server/PROFILE/deploy/hornetq/hornetq-configuration.xmlに含まれ、JMS 接続ファクトリー (ThroughputConnectionFactory) がJBOSS_DIST/jboss-as/server/PROFILE/deploy/hornetq/hornetq-jms.xmlに含まれます。これは、特に小さいメッセージの場合にスループットを最大化するために使用できます。詳細については、14章トランスポートの設定 を参照してください。