Impostazioni Service Request Broker

Utilizzare questa pagina per configurare il servizio Java™ Object Request Broker (ORB) e regolare le impostazioni che controllano l'elaborazione di ORB (Object Request Broker).

Per visualizzare questa pagina della console di gestione:
  • Per un application server, fare clic su Server > Tipi di server > WebSphere application server > nome_server > Servizi contenitore > Servizio ORB.
  • Per un gestore di distribuzione, fare clic su Amministrazione del sistema > Gestore distribuzione > Servizio ORB.

Diverse impostazioni sono disponibili per il controllo dell'elaborazione di ORB (Object Request Broker). È possibile utilizzare queste impostazioni per migliorare le prestazioni delle applicazioni per le applicazioni che contengono i bean enterprise. È possibile modificare queste impostazioni per il server predefinito o qualsiasi server di applicazioni configurato nel dominio amministrativo.

Timeout della 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.

Informazioni Valore
Tipo di dati int
Unità Secondi
Predefinito 180
Intervallo 0 - intero più grande riconosciuto da Java
[ AIX Solaris HP-UX Linux Windows][IBM i]

Numero dei tentativi di richiesta

Specifica il numero di tentativi eseguiti da ORB per inviare una richiesta in caso di malfunzionamento di un 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.

Informazioni Valore
Tipo di dati int
Predefinito 1
Intervallo Da 1 a 10
[ AIX Solaris HP-UX Linux Windows][IBM i]

Ritardo tentativo richiesta

Specifica il numero di 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.

Informazioni Valore
Tipo di dati int
Unità Millisecondi
Predefinito 0
Intervallo Da 0 a 60.000
[ AIX Solaris HP-UX Linux Windows][IBM i]

Connessione cache massima

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

È possibile che il numero di connessioni attive nella cache possa superare temporaneamente questo valore di soglia. Se necessario, ORB può continuare ad aggiungere connessioni se le risorse sono disponibili.

Per l'uso negli script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.MaxOpenConnections.

Informazioni Valore
Tipo di dati Numero intero
Unità Connessioni
Predefinito 240
Intervallo 0 - intero più grande riconosciuto da Java
[ AIX Solaris HP-UX Linux Windows][IBM i]

Connessione cache minima

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

L'ORB non elimina le connessioni inattive quando il numero di voci non soddisfa questo valore.

Per l'uso negli script della riga comandi, il nome completo di questa proprietà di sistema è com.ibm.CORBA.MinOpenConnections.

Informazioni Valore
Tipo di dati Numero intero
Unità Connessioni
Predefinito 100
Intervallo 0 - intero più grande riconosciuto da Java

Traccia ORB

Abilita la traccia dei messaggi GIOP (General Inter - ORB Protocol) ORB che include ORBRas = all trace e ORB CommTrace.

Questa impostazione influisce su due proprietà di sistema: com.ibm.CORBA.Debug e com.ibm.CORBA.CommTraceCommTrace. Se si impostano queste proprietà tramite script di riga comandi, è necessario impostare entrambe le proprietà su true per abilitare la traccia dei messaggi di GIOP.
Nota: Questa impostazione richiede un riavvio del server.
Informazioni Valore
Tipo di dati Booleano
Predefinito Non abilitato (falso)
[ AIX Solaris HP-UX Linux Windows][IBM i]

Posizione timeout di richiesta

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.

Informazioni Valore
Tipo di dati int
Unità Secondi
Predefinito 180
Intervallo Da 0 a 300
[ AIX Solaris HP-UX Linux Windows][IBM i]

Forza tunneling

Controlla il modo in cui l'ORB client tenta di utilizzare il tunneling 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.

Informazioni Valore
Tipo di dati La stringa
Predefinito NEVER
Intervallo I valori validi sono ALWAYS, NEVERo WHENREQUIRED.
Considerando le seguenti informazioni quando si sceglie il valore valido:
SEMPRE
Utilizzare immediatamente il tunneling HTTP, senza provare prima le connessioni TCP.
MAI
Disabilita il tunneling di HTTP. Se una connessione TCP fallisce, si verifica un'eccezione di sistema CORBA (COMM_FAILURE).
QUANDO RICHIESTO
Utilizzare il tunneling HTTP se le connessioni TCP falliscono.
[ AIX Solaris HP-UX Linux Windows][IBM i]

Esegui tunneling agent URL

Specifica l'indirizzo web del servlet da utilizzare a supporto del tunneling HTTP. Questo campo viene ignorato sulla piattaforma z/OS.

Questo indirizzo web deve essere un formato corretto:

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

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

Questo campo è obbligatorio se è impostato il tunneling HTTP. Se si utilizza lo scripting da riga di comando, il nome completo di questa proprietà di sistema è com.ibm.CORBA.TunnelAgentURL.

Invio per riferimento

Specifica come l'ORB supera i parametri. Se abilitato, ORB supera i parametri con riferimento invece che per valore, per evitare di effettuare una copia oggetto. Se non si abilita il passaggio per opzione di riferimento, una copia del parametro passa piuttosto che l'oggetto di parametro stesso. Questa copia può essere costosa perché l'ORB deve prima effettuare una copia di ogni oggetto di parametro.

È possibile utilizzare questa opzione solo quando il client EJB (Enterprise JavaBeans ) e EJB si trovano sullo stesso programma di caricamento classe. Questo requisito significa che il client EJB e l'EJB devono essere distribuiti nello stesso file EAR.

L'abilitazione del pass per opzione di riferimento può migliorare le prestazioni fino a 50% quando:
  • Il client e il server EJB (Enterprise JavaBeans ) sono installati sulla stessa istanza del prodotto.
  • Il client e il server utilizzano interfacce remote.
Il pass per opzione di riferimento aiuta le prestazioni solo in cui i tipi di oggetto non primitivi vengono passati come parametri. Pertanto, int e floats vengono sempre copiati, indipendentemente dal modello di chiamata.
Evitare i problemi: Abilitare questa proprietà con cautela perché si può verificare un comportamento imprevisto. Se un riferimento oggetto viene modificato dalla callee, anche l'oggetto del chiamante viene modificato, dato che sono lo stesso oggetto.

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

Informazioni Valore
Tipo di dati Booleano
Predefinito Non abilitato (falso)

L'utilizzo di questa opzione per i bean aziendali con interfacce remote viola la specifica EJB (Enterprise JavaBeans ), Versione 2.0 (vedere sezione 5.4). I riferimenti agli oggetti passati ai metodi EJB (Enterprise JavaBeans ) o ai metodi home EJB non vengono copiati e possono essere soggetti a danneggiamento.

Considera 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 passa nel prodotto con un valore ID diverso ogni volta. L'esecuzione di questo codice con il pass by reference abilitato causa un problema all'interno dell'application server, poiché più enterprise beans 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 pass by reference. L'impostazione dell'opzione pass by reference su true fa sì che il contenitore EJB esegua una copia locale dell'oggetto PrimaryKey . Ma di conseguenza, si perde una piccola parte del vantaggio delle prestazioni di impostare il pass per opzione di riferimento.

Di regola, qualsiasi codice di applicazione che supera un riferimento oggetto come parametro ad un metodo bean enterprise o ad un metodo di home EJB deve essere scrutinato. Passare il riferimento oggetto potrebbe comportare perdita di integrità dei dati o altro problema.

Dopo aver esaminato il proprio codice, è possibile abilitare l'opzione pass by reference impostando la propriet ... di sistema com.ibm.CORBA.iiop.noLocalCopies sutrue. Si può anche abilitare il passaggio per opzione di riferimento nella console di gestione. Fare clic su Server > Tipi di server > Server delle applicazioni > nome_server > Servizi contenitore > Servizio ORB e selezionare Passa per riferimento.

impostazioni del pool di thread

Specifica quale pool di thread verrà utilizzato per il servizio ORB, nonché la possibilità di effettuare eventuali regolazioni del pool di thread per l'opzione del pool di thread.

Dopo la casella di controllo Pass by reference è possibile selezionare Impostazioni Pool di thread quindi eseguire una delle seguenti azioni e apportare eventuali regolazioni del pool di thread:
  • Utilizzare le impostazioni ORB.thread.pool associate al gestore pool di thread, quindi fare clic su Impostazioni pool di thread ORB, che mostra le impostazioni generali del pool di thread per ORB.thread.pool.
  • Utilizzare le impostazioni del pool di thread direttamente associate al servizio ORB, quindi fare clic su Impostazioni del pool Thread, che mostra le impostazioni generali del pool di thread per il servizio ORB.