Impostazioni del servizio ORB (Object Request Broker)

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 > Tipi di server > WebSphere Application Server > nome_server > Servizi contenitore > 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.

Timeout di richiesta

Specifica il numero di secondi di attesa prima del timeout su un messaggio di richiesta.

Se si utilizza lo script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.RequestTimeout.

Tipo dati int
Unità di misura Secondi
Valore predefinito 180
Intervallo 0 - numero intero più grande riconosciuto da Java
Numero di tentativi di richiesta [AIX Solaris HP-UX Linux Windows] [iSeries]

Specifica il numero di tentativi di invio di una richiesta da parte dell'ORB in caso di mancata risposta da parte del server. Ritentare talvolta consente di risolvere eventuali errori transitori sulla rete. Questo campo viene ignorato per z/OS.

Se si utilizza lo script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.requestRetriesCount.

Tipo dati int
Valore predefinito 1
Intervallo Da 1 a 10
Ritardo tentativo richiesta [AIX Solaris HP-UX Linux Windows] [iSeries]

Specifica il numero in millisecondi tra i tentativi di richiesta. Questo campo viene ignorato per z/OS.

Se si utilizza lo script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.requestRetriesDelay.

Tipo dati int
Unità di misura Millisecondi
Valore predefinito 0
Intervallo Da 0 a 60.000
Dimensione massima della cache delle connessioni [AIX Solaris HP-UX Linux Windows] [iSeries]

Specifica il numero massimo di voci che possono occupare la cache di connessione ORB prima che ORB inizi la rimozione delle connessioni disattivate. Questo campo viene ignorato per z/OS.

È possibile che il numero di connessioni attive nella cache superi temporaneamente questo valore di soglia. Se necessario, l'ORB continuerà ad aggiungere connessioni finché le risorse sono disponibili.

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à di misura Connessioni
Valore predefinito 240
Intervallo 10 - numero intero più grande riconosciuto da Java
Dimensione minima della cache delle connessioni [AIX Solaris HP-UX Linux Windows] [iSeries]

Specifica il numero minimo di voci nella cache di connessione ORB. Questo campo viene ignorato per z/OS.

L'ORB non rimuoverà le connessioni remote disattivate quando il numero di voci è inferiore a tale valore.

Per essere utilizzato nello script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.MinOpenConnections.

Tipo dati Numero intero
Unità di misura Connessioni
Valore predefinito 100
Intervallo Qualsiasi numero intero che sia inferiore di almeno 5 del valore specificato per la proprietà massima della cache di connessione.
Traccia ORB

Abilita la traccia dei messaggi GIOP (General Inter-ORB Protocol) dell'ORB.

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 le proprietà su true in modo da abilitare la traccia dei messaggi GIOP.

Tipo dati Booleano
Valore predefinito Non abilitato (false)
Timeout di richiesta posizione [AIX Solaris HP-UX Linux Windows] [iSeries]

Specifica il numero di secondi di attesa prima del timeout su un messaggio LocateRequest. Questo campo viene ignorato per z/OS.

Se si utilizza lo script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.LocateRequestTimeout.

Tipo dati int
Unità di misura Secondi
Valore predefinito 180
Intervallo Da 0 a 300
Forza tunneling [AIX Solaris HP-UX Linux Windows] [iSeries]

Controlla in che modo l'ORB tenta di utilizzare l'operazione di tunnel HTTP. Questo campo viene ignorato per z/OS.

Se si utilizza lo script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.ForceTunnel.

Tipo dati Stringa
Valore predefinito MAI
Intervallo I valori validi sono SEMPRE, MAI o QUANDO RICHIESTO.
Considerare le seguenti informazioni quando si sceglie il valore valido:
SEMPRE
Utilizza immediatamente l'operazione di tunnel HTTP, senza tentare per prima cosa i collegamenti TCP.
MAI
Disabilita l'operazione di tunnel HTTP. Se un collegamento TCP non riesce, si verifica un'eccezione di sistema CORBA (COMM_FAILURE).
QUANDO RICHIESTO
Utilizza l'operazione di tunnel HTTP se i collegamenti TCP non riescono.
URL agente tunnel [AIX Solaris HP-UX Linux Windows] [iSeries]

Specifica l'indirizzo Web del servlet da utilizzare in supporto dell'operazione di tunnel HTTP. Questo campo viene ignorato sulla piattaforma z/OS.

Questo indirizzo Web deve avere il seguente formato:

http://w3.mycorp.com:81/servlet/com.ibm.CORBA.services.IIOPTunnelServlet

Per gli applet: http://applethost:port/servlet/com.ibm.CORBA.services.IIOPTunnelServlet.

Questo campo è obbligatorio se viene impostata l'operazione di tunnel HTTP. Se si utilizza lo script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.TunnelAgentURL.

Invio per riferimento

Specifica in che modo gli ORB inviano i parametri. Se abilitato, l'ORB invia i parametri per riferimento invece che per valore, evitando così di eseguire una copia dell'oggetto. Se l'opzione Invio per riferimento non viene abilitata, viene passata una copia del parametro e non l'oggetto parametro. Questa operazione può essere dispendiosa perché l'ORB deve prima eseguire una copia di ciascun oggetto parametro.

È possibile utilizzare tale opzione solo quando il client EJB (Enterprise JavaBean) e EJB sono nello stesso programma di caricamento classe. Tale requisito indica che il client EJB ed EJB devono essere distribuiti nello stesso file EAR.

Se il server ed il client EJB (Enterprise JavaBean) sono installati sulla stessa istanza del prodotto ed il client ed il server utilizzano le interfacce remote, l'abilitazione dell'opzione Invio per riferimento può migliorare le prestazioni fino al 50%. L'opzione Invio per riferimento migliora le prestazioni solo quando vengono passati come parametri dei tipi di oggetto non primitivi. Quindi, int e floats vengono copiati sempre, indipendentemente dal modello di chiamata.

Prevenzione dei problemi: Abilitare questa proprietà con cautela perché potrebbero verificarsi dei risultati imprevisti. Se un riferimento oggetto viene modificato dal chiamante, viene modificato anche l'oggetto del chiamante, perché sono lo stesso oggetto.gotcha

Se si utilizza lo script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.iiop.noLocalCopies.

Tipo dati Booleano
Valore predefinito Non abilitato (false)

L'uso di quest'opzione per i bean enterprise con le interfacce remote non rispetta la specifica EJB (Enterprise JavaBean), versione 2.0 (vedere la sezione 5.4). I riferimenti a oggetti inoltrati ai metodi EJB (Enterprise JavaBean) o ai metodi home EJB non vengono copiati e possono essere suscettibili a modifiche.

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 al prodotto ogni volta con un valore ID diverso. L'esecuzione di questo codice con l'opzione Invio per riferimento abilitata determina un problema sul server delle applicazioni perché più bean enterprise fanno riferimento allo stesso oggetto MyPrimaryKey. Per evitare questo problema, impostare la proprietà di sistema com.ibm.websphere.ejbcontainer.allowPrimaryKeyMutation su true quando è abilitata l'opzione Invio per riferimento. Impostando l'opzione Invio per riferimento su true, il contenitore EJB esegue una copia locale dell'oggetto PrimaryKey. Tuttavia, come conseguenza, viene persa una piccola parte dei miglioramenti alle prestazioni che derivano dall'impostazione dell'opzione 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 oggetto può causare la perdita di integrità dei dati o altri problemi.

Dopo avere esaminato il codice, è possibile abilitare l'opzione Invio per riferimento impostando la proprietà di sistema com.ibm.CORBA.iiop.noLocalCopies su true. È anche possibile abilitare l'opzione Invio per riferimento nella console di gestione. Fare clic su Server > Tipi di server > Server delle applicazioni > nome_server > Servizi di contenitore > Servizio ORB e selezionare Invio per riferimento.




I collegamenti contrassegnati (online) richiedono un accesso a Internet.

Attività correlate
Riferimenti correlati
[AIX Solaris HP-UX Linux Windows] [iSeries] Impostazioni del lotto thread
[AIX Solaris HP-UX Linux Windows] [iSeries]
[AIX Solaris HP-UX Linux Windows] [iSeries]


Nome file: uorb_rsetg.html