最大受信バッファサイズの拡張について
最大メッセージ分割サイズの拡張や、非フラグメントモード使用時、接続先の送信データサイズが256000Byteを超える場合がないか確認してください。
接続先の送信データサイズが256000Byteを超える場合、最大受信バッファサイズを拡張する必要があります。
最大受信バッファサイズの設定は、Java VMオプションで指定します。
最大受信バッファサイズはデータ受信時の設定であり、クライアントからのリクエスト受信時と、サーバーからのリプライ受信時に有効な機能になります。
com.sun.corba.ee.transport.ORBMaximumReadByteBufferSize
256000~2147483647(Byte)
256000
スタンドアロンクライアントの場合
Java VMオプションに設定します。
-Dcom.sun.corba.ee.transport.ORBMaximumReadByteBufferSize=設定値
アプリケーションクライアントコンテナに設定する場合
環境変数VMARGSに設定します。
詳細については、以下のマニュアルを参照してください。
「Java EE運用ガイド」の「Java EEアプリケーションクライアントの環境設定」
IJServerクラスタに設定する場合
Interstage Java EE管理コンソールまたはasadminコマンドを使用してJava VMオプションに設定します。
-Dcom.sun.corba.ee.transport.ORBMaximumReadByteBufferSize=設定値
詳細については、以下のマニュアルを参照してください。
Interstage Java EE管理コンソールヘルプ
リファレンスマニュアル(コマンド編)の「configs.config.java-configの定義項目」のjava-config.jvm-options(JVMオプション)
設定変更時は、IJServerクラスタを再起動する必要があります。
接続先から受信したデータは、受信バッファに格納されます。受信バッファのサイズは、受信するデータサイズにより、初期値64000Byteから、最大受信バッファサイズの設定値まで、2倍ずつ(64000→128000→256000)拡張されます。
受信するデータサイズが、最大受信バッファサイズを超過した場合、データ受信処理は失敗し、以下の警告メッセージが通知されます。
IOP00410233
本警告メッセージが通知された場合は、接続先の送信データサイズが最大受信バッファサイズより小さくなるようにチューニングしてください。
Windows Server(R) 2008以降における処理遅延について
オペレーションシステムの仕様(KB2020447)により、以下の条件でデータ送受信中に5秒間の処理遅延が発生する場合があります。
Java EEのクライアントとサーバを同一マシンで運用する。
65536Byteから1048576Byteの通信データを一度に送受信する。
本現象を回避するためには、以下の対処を行ってください。
最大メッセージ分割サイズが有効な場合
最大メッセージ分割サイズを65536Byte未満に設定する。
最大メッセージ分割サイズが無効な場合
ユーザーアプリケーションで一度に送受信する通信データサイズを以下の範囲で調整する。
65536Byte未満
1048577Byte以上