3.5 その他の考慮事項

プロセス・オブジェクトは、特定のクライアント・リクエストで実際に必要とされる最小限の情報を渡すように設計します。プロセス・オブジェクトのオペレーションは、可能なかぎり「密度の高い」処理が実行されるように実装します。クライアント・アプリケーションは、タスクを遂行するために必要なデータの取得に複数のプロセス・オペレーションを呼び出さないように設計します。

複数のオペレーションを呼び出す必要がある場合は、追加の呼出しがクライアント・アプリケーションからプロセス・オブジェクトにではなく、プロセス・オブジェクトからデータベースに対して行われるようにプロセス・オブジェクトを設計してください。そのように設計することで、クライアント・アプリケーションからネットワーク経由で送信される呼出しの数が減ります。クライアント・アプリケーションからプロセス・オブジェクトに連続的に呼出しを行わなければならない場合は、プロセス・オブジェクトをステートフルにしてください。オブジェクトをステートフルにする方法については、Oracle Tuxedoオンライン・ドキュメントの『CORBAサーバー・アプリケーションの作成』を参照してください。

CORBAアプリケーションでは、OMG IDLで属性を使用しないでください。属性は、ネットワーク経由で取り出すのにコストがかかります。かわりに、クライアント・アプリケーションで必要となりそうなすべての値を格納するデータ構造を返すオペレーションをプロセス・オブジェクトで実装します。