Utilisez cette page pour configurer le service ORB (Object Request Broker) Java.
Pour afficher cette page de la console d'administration, cliquez sur Serveurs > Serveurs d'applications > nomServeur > Service ORB.
Plusieurs paramètres sont disponibles pour contrôler le traitement interne des ORB (Object Request Broker). Vous pouvez les utiliser pour améliorer les performances de vos applications lorsque celles-ci contiennent des beans enterprise. Vous pouvez modifier ces paramètres pour le serveur par défaut ou pour tout autre serveur d'applications configuré dans le domaine d'administration.
Onglet Configuration
Dans un script de ligne de commande, le nom complet de cette propriété système est com.ibm.CORBA.RequestTimeout.
| Type de données | Entier |
| Unité | Seconde |
| Valeur par défaut | 180 |
| Plage | 0 à 300 |
Dans un script de ligne de commande, le nom complet de cette propriété système est com.ibm.CORBA.requestRetriesCount.
| Type de données | Entier |
| Valeur par défaut | 1 |
| Plage | 1 à 10 |
Dans un script de ligne de commande, le nom complet de cette propriété système est com.ibm.CORBA.requestRetriesDelay.
| Type de données | Entier |
| Unité | Millisecondes |
| Valeur par défaut | 0 |
| Plage | 0 à 60 |
Dans un script de ligne de commande, le nom complet de cette propriété système est com.ibm.CORBA.MaxOpenConnections.
| Type de données | Entier |
| Unité | Connexions |
| Valeur par défaut | 240 |
| Type de données | Entier |
| Unité | Connexions |
| Valeur par défaut | 100 |
Ce paramètre concerne deux propriétés système : com.ibm.CORBA.Debug et com.ibm.CORBA.CommTrace. Si vous définissez ces propriétés par le biais d'un script de ligne de commande, vous devez affecter la valeur true à ces deux propriétés pour activer le traçage des messages GIOP.
| Type de données | Booléen |
| Valeur par défaut | Non activé (false) |
Dans un script de ligne de commande, le nom complet de cette propriété système est com.ibm.CORBA.LocateRequestTimeout.
| Type de données | Entier |
| Unité | Seconde |
| Valeur par défaut | 180 |
| Plage | 0 à 300 |
Pour un accès direct, le nom complet de cette propriété est com.ibm.CORBA.ForceTunnel.
| Type de données | Chaîne |
| Valeur par défaut | NEVER |
| Plage | Les valeurs valides sont ALWAYS, NEVER et WHENREQUIRED. |
Voici des informations complémentaires sur les valeurs correctes :
Il doit s'agir d'une URL correctement formée. Par exemple : http://w3.mycorp.com:81/servlet/com.ibm.CORBA.services.IIOPTunnelServlet ou, pour les applets : http://applethost:port/servlet/com.ibm.CORBA.services.IIOPTunnelServlet. Cette zone est obligatoire si l'option de tunnels HTTP a été définie.
Dans un script de ligne de commande, le nom complet de cette propriété système est com.ibm.CORBA.TunnelAgentURL.
Si le client d'EJB et le serveur d'EJB sont installés sur la même instance de WebSphere Application Server, et qu'ils utilisent des interfaces éloignées, l'activation de la transmission par référence peut améliorer les performances de 50%. La transmission par référence ne permet d'améliorer les performances que si des types d'objet non primitif sont transmis comme paramètres. Par conséquent, les variables flottantes (float) et les valeurs int sont toujours copiées quel que soit le modèle d'appel.
Activez cette propriété avec attention car elle peut entraîner un comportement inattendu. si un objet est modifié par la méthode éloignée, l'appelant peut changer.
Dans un script de ligne de commande, le nom complet de cette propriété système est com.ibm.CORBA.iiop.noLocalCopies.
| Type de données | Booléen |
| Valeur par défaut | Non activé (false) |
L'utilisation de cette option pour les beans enterprise avec les interfaces éloignées n'est pas conforme à la spécification EJB, Version 2.0 (voir la section 5.4). Les références d'objets transmises aux méthodes EJB ou aux méthodes Home EJB ne sont pas copiées et peuvent être altérées.
Prenons l'exemple suivant :
Iterator iterator = collection.iterator();
MyPrimaryKey pk = new MyPrimaryKey();
while (iterator.hasNext()) {
pk.id = (String) iterator.next();
MyEJB myEJB = myEJBHome.findByPrimaryKey(pk);
}
Dans cet exemple, une référence au même objet MyPrimaryKey est transmise à WebSphere Application Server, chaque fois avec une valeur d'ID différente. Lorsque ce code est exécuté avec la transmission par référence activée, un incident se produit dans le serveur d'applications car plusieurs beans enterprise font référence au même objet MyPrimaryKey. Pour éliminer cet incident, attribuez la valeur true à la propriété système com.ibm.websphere.ejbcontainer.allowPrimaryKeyMutation lorsque la transmission par référence est activée. Le conteneur d'EJB effectue alors une copie locale de l'objet PrimaryKey. Cela provoque la perte partielle des performances obtenues en définissant la transmission par référence.
En règle générale, tout code d'application qui transmet une référence d'objet à une méthode de bean enterprise ou une méthode Home EJB sous la forme d'un paramètre doit être examiné afin de déterminer si la transmission de cette référence d'objet provoque un manque d'intégrité des données ou d'autres incidents.