Utilizzare questa pagina per configurare il servizio ORB (Object Request Broker) di Java.
Per visualizzare questa pagina della console di gestione, fare clic su Server > Server delle applicazioni > serverName > Servizio ORB.
Sono disponibili diverse impostazioni per il controllo dell'elaborazione ORB (Object Request Broker) interna. È possibile utilizzare queste impostazioni per migliorare le prestazioni dell'applicazione nel caso in cui le applicazioni contengano i bean enterprise. È possibile modificare queste impostazioni per il server predefinito o per qualsiasi server delle applicazioni configurato nel dominio di gestione.
Scheda Configurazione
Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.RequestTimeout.
| Tipo dati | int |
| Unità | Secondi |
| Predefinito | 180 |
| Intervallo | Da 0 a 300 |
Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.requestRetriesCount.
| Tipo dati | int |
| Predefinito | 1 |
| Intervallo | Da 1 a 10 |
Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.requestRetriesDelay.
| Tipo dati | int |
| Unità | Millisecondi |
| Predefinito | 0 |
| Intervallo | Da 0 a 60 |
Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.MaxOpenConnections.
| Tipo dati | Numero intero |
| Unità | Connessioni |
| Predefinito | 240 |
| Tipo dati | Numero intero |
| Unità | Connessioni |
| Predefinito | 100 |
Questa impostazione influisce su due proprietà di sistema: com.ibm.CORBA.Debug e com.ibm.CORBA.CommTrace. Se si impostano queste proprietà tramite lo script della riga comandi, è necessario impostare entrambe su true in modo da abilitare la traccia dei messaggi GIOP.
| Tipo dati | Valore booleano |
| Predefinito | Non abilitato (false) |
Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.LocateRequestTimeout.
| Tipo dati | int |
| Unità | Secondi |
| Predefinito | 180 |
| Intervallo | Da 0 a 300 |
Per accesso diretto, il nome completo di questa proprietà è com.ibm.CORBA.ForceTunnel.
| Tipo dati | Stringa |
| Predefinito | MAI |
| Intervallo | I valori validi sono SEMPRE, MAI o QUANDO RICHIESTO. |
Ulteriori informazioni sui valori validi vengono indicati di seguito:
Deve essere un URL creato in modo appropriato, come ad esempio http://w3.mycorp.com:81/servlet/com.ibm.CORBA.services.IIOPTunnelServlet oppure, per gli applet, http://applethost:port/servlet/com.ibm.CORBA.services.IIOPTunnelServlet. Se viene impostata l'operazione di tunnel HTTP, questo campo è obbligatorio.
Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.TunnelAgentURL.
Se il client EJB e il server EJB vengono installati nella stessa istanza di WebSphere Application Server e il client e il server utilizzano le interfacce remote, l'abilitazione di Invio per riferimento può migliorare le prestazioni del 50%. Invio per riferimento migliora le prestazioni solo quando i tipi oggetto non-primitive vengono inviati come parametri. Quindi, int e floats vengono copiati sempre, indipendentemente dal modello di chiamata.
Abilitare questa proprietà con cautela, potrebbe verificarsi una funzione imprevista. Se un riferimento oggetto viene modificato dal metodo remoto, la modifica potrebbe essere visualizzata dal chiamante.
Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.iiop.noLocalCopies.
| Tipo dati | Valore booleano |
| Predefinito | Non abilitato (false) |
L'uso di quest'opzione per i bean enterprise con le interfacce remote non rispetta la specifica EJB, versione 2.0 (vedere la sezione 5.4). I riferimenti a oggetti inoltrati ai metodi EJB o ai metodi home EJB non vengono copiati e possono essere suscettibili ad alterazioni.
Considerare il seguente esempio:
Iterator iterator = collection.iterator();
MyPrimaryKey pk = new MyPrimaryKey();
while (iterator.hasNext()) {
pk.id = (String) iterator.next();
MyEJB myEJB = myEJBHome.findByPrimaryKey(pk);
}
In questo esempio, un riferimento allo stesso oggetto MyPrimaryKey viene inoltrato a WebSphere Application Server ogni volta con un valore ID diverso. L'esecuzione di questo codice con Invio-per-riferimento abilitato, provoca un problema all'interno del server delle applicazioni a causa di più bean enterprise che fanno riferimento allo stesso oggetto MyPrimaryKey. Per evitare questo problema, impostare la proprietà di sistema com.ibm.websphere.ejbcontainer.allowPrimaryKeyMutation su true quando viene abilitato Invio-per-riferimento. L'impostazione di Invio per riferimento su true determina la creazione di una copia locale dell'oggetto PrimaryKey da parte del contenitore EJB. Di conseguenza, si perde una piccola parte dei vantaggi alle prestazioni offerti dall'impostazione di Invio per riferimento.
Come regola generale, è necessario esaminare il codice applicazione che inoltra un riferimento oggetto come un parametro a un metodo bean enterprise o a un metodo home EJB per determinare se il trasferimento di tale riferimento oggetto può causare la perdita dell'integrità dei dati o altri problemi.