![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
Intelligent Management: control de la generación del archivo plugin-cfg.xml
Puede alterar temporalmente los valores de atributo predeterminados del archivo plugin-cfg.xml que genera automáticamente el direccionador On Demand (ODR).
Los siguientes elementos tienen el formato com.ibm.ws.odr.plugincfg.<elemento>.<nombreAtributo>, donde <elemento> es el nombre de la palabra clave del archivo de configuración que denota el elemento que contiene un atributo, y <nombreAtributo> es el nombre del atributo que se encuentra dentro de dicho elemento. Configure los elementos como propiedades del sistema JVM. Para establecer una propiedad del sistema JVM en el ODR con la consola de administración, pulse
.Config
Este elemento inicia el archivo de configuración de plug-in. Puede incluir uno o varios de los siguientes elementos y atributos.
- com.ibm.ws.odr.plugincfg.config.ASDisableNagle
- Especifica si el usuario desea inhabilitar el algoritmo de Nagle para la conexión
entre el plug-in y el servidor.
El valor por omisión es false.
- com.ibm.ws.odr.plugincfg.config.AcceptAllContent
- Especifica si desea incluir o no contenido en las solicitudes POST, PUT, GET y HEAD
cuando existe una cabecera de longitud de contenido o codificación de transferencia en la
cabecera de la solicitud. Puede
especificar uno de los siguientes valores para este atributo:
- True si se espera contenido y si se va a leer para todas las solicitudes.
- False si se espera contenido y sólo se va a leer para las solicitudes POST y PUT.
El valor por omisión es false.
El valor predeterminado es true.
- com.ibm.ws.odr.plugincfg.config.AppServerPortPreference
- Especifica qué número de puerto se utiliza para crear URI para sendRedirect.
El valor predeterminado es HostHeader.
- com.ibm.ws.odr.plugincfg.config.ChunkedResponse
- Especifica si el plug-in agrupa la respuesta en el cliente cuando existe en la
respuesta una cabecera de codificación de transferencia : respuesta fragmentada.
Puede especificar uno de los siguientes valores para este atributo:
- True si el plug-in fragmenta la respuesta en el cliente cuando existe en la respuesta una cabecera de codificación de transferencia : respuesta fragmentada.
- false si no se va a trocear la respuesta.
El valor por omisión es false.
- com.ibm.ws.odr.plugincfg.config.IISDisableNagle
- Especifica si desea inhabilitar el algoritmo de Nagle.
El valor por omisión es false.
- com.ibm.ws.odr.plugincfg.config.IISPluginPriority
- Especifica la prioridad con la que el servidor web carga el plug-in. Puede
especificar uno de los siguientes valores para este atributo:
- Alta
- Media
- Baja
El valor predeterminado es Alta.
- com.ibm.ws.odr.plugincfg.config.IgnoreDNSFailures
- Especifica si el plug-in ignora las anomalías de DNS en una configuración cuando se
inicia. Cuando se establece en true, el plug-in ignora las anomalías
de DNS en una configuración y se inicia satisfactoriamente si al menos un servidor en
cada ServerCluster resuelve el nombre de host. Los servidores para los que no se resuelve
el nombre de host se marcan como no disponible durante el ciclo de vida de la
configuración. El nombre de host no se resuelve posteriormente durante el
direccionamiento de las solicitudes. Si se produce una anomalía de DNS, se escribe un
mensaje de registro en el archivo de registro de plug-in y el plug-in
continúa inicializándose en lugar del servidor web que no se inicia.
El valor por omisión es false.
- com.ibm.ws.odr.plugincfg.config.RefreshInterval
- El intervalo de tiempo, en segundos, con el que el plug-in debe comprobar si hay
cambios o actualizaciones en el archivo de configuración. El plug-in comprueba si se han
producido modificaciones en el archivo desde que se cargó la configuración del plug-in.
El valor predeterminado es 60. En un entorno de desarrollo en el que los cambios son frecuentes, establezca el intervalo de tiempo en un valor inferior a 60 segundos. En un entorno de producción, establezca un valor superior al valor predeterminado, ya que las actualizaciones no se producen con tanta frecuencia en la configuración. Si la recarga del plug-in no es satisfactoria, el archivo de anotaciones del plug-in contendrá un mensaje y se utilizará la configuración anterior hasta que el archivo de configuración del plug-in se recargue satisfactoriamente. Consulte el archivo de anotaciones del plug-in para obtener más información si se produce un error.
- com.ibm.ws.odr.plugincfg.config.ResponseChunkSize
- El archivo de plug-in lee el cuerpo de la respuesta en fragmentos de 64k hasta que se
leen todos los datos de la respuesta, lo que supone un problema de rendimiento para las
solicitudes cuyo cuerpo de respuesta contenga grandes cantidades de datos.
Utilice este atributo para especificar el tamaño de fragmento máximo que desea utilizar cuando se lee el cuerpo de la respuesta. Por ejemplo, Config ResponseChunkSize="N">, donde N es igual al tamaño de chunk en kilobytes.
Si la longitud del contenido del cuerpo de respuesta es desconocida, se asigna un tamaño de almacenamiento intermedio de N kilobytes y el cuerpo se lee en fragmentos de N kilobytes de tamaño hasta que se lee todo el cuerpo. Si la longitud del contenido es conocida, se utiliza un tamaño de almacenamiento intermedio igual a la longitud del contenido o N para leer el cuerpo de la respuesta.
El tamaño de los fragmentos predeterminados es 64k.
- com.ibm.ws.odr.plugincfg.config.VHostMatchingCompat
- Especifica que se debe utilizar el número de puerto para la coincidencia de hosts
virtuales. Pueden especificarse los siguientes valores:
- True para la coincidencia física utilizando el número de puerto para el que se ha recibido la solicitud.
- False para la coincidencia lógica utilizando el número de puerto contenido en la cabecera de host.
El valor predeterminado es False.
- com.ibm.ws.odr.plugincfg.odrIncludeStopped
- Especifica que se permita la inclusión de los ODR detenidos. Pueden especificarse los siguientes valores:
- True para incluir los ODR detenidos.
- False para no incluir los ODR detenidos.
El valor predeterminado es False.
- com.ibm.ws.odr.plugincfg.config.TrustedProxyEnable
- Especifica los proxies de confianza. Pueden especificarse los siguientes valores:
- True para incluir proxies de confianza.
- False para no incluir proxies de confianza.
El valor predeterminado es False. Los proxies de confianza se recopilan de los proxies de seguridad de confianza definidos en la página de la consola de administración
.
Anotaciones cronológicas
El registro describe la ubicación y el nivel de los mensajes de registro que escribe el plug-in. Si no se especifica un registro en el archivo de configuración, los mensajes de registro se escribirán en el registro de errores.
- com.ibm.ws.odr.plugincfg.log.Name
- La vía de acceso plenamente cualificada del archivo de registro en el
que el plug-in escribe mensajes de error.
El valor predeterminado es profileRoot/logs/http_plugin.log.
- com.ibm.ws.odr.plugincfg.log.LogLevel
- El nivel de detalle de los mensajes de registro que el plug-in escribe en los registros. Puede especificar uno de los siguientes valores para este
atributo:
- Trace. Todos los pasos del proceso de solicitud se anotan detalladamente.
- Stats. Se anota el servidor seleccionado para cada solicitud y otra información de equilibrado de carga relacionada con el manejo de solicitudes.
- Warn. Se anotan todos los mensajes de aviso y error debidos al proceso anómalo de solicitudes.
- Error. Se anotan sólo los mensajes de error debidos al proceso anómalo de solicitudes.
- Debug. Se anotan todos los pasos críticos realizados en el proceso de las solicitudes.
- Detail. Se anota toda la información sobre las solicitudes y las respuestas.
El valor predeterminado es Error.PRECAUCIÓN:Muchos mensajes se anotan a nivel de rastreo, lo que puede hacer que el sistema de archivos se llene rápidamente. No utilice nunca un valor de rastreo en un entorno con un funcionamiento normal, ya que puede afectar negativamente al rendimiento.
ServerCluster
Este elemento es un grupo de servidores que se configuran generalmente para dar servicio al mismo tipo de solicitudes.
En el caso más simple, el clúster contiene sólo una definición de servidor. Si define más de un servidor, el plug-in realiza un equilibrado de carga en los servidores definidos utilizando un algoritmo por turno circular o un algoritmo aleatorio. El valor predeterminado es el turno circular.
- com.ibm.ws.odr.plugincfg.cluster.CloneSeparatorChange
- Algunos dispositivos generalizados no pueden manejar el signo de dos puntos (:) que
se utiliza para separar los ID de clones junto con la afinidad de sesiones. Este atributo
indica al al plug-in que espere a que aparezca el signo más (+) como el separador de
clones. Debe modificar las configuraciones de servidor para que un servidor pueda separar
también los ID de clones con el signo más.
El valor por omisión es false.
- com.ibm.ws.odr.plugincfg.cluster.LoadBalance
- La implementación del turno circular se inicia en un punto de partida aleatorio. El primer
servidor se selecciona aleatoriamente y se utiliza el valor de turno circular para
seleccionar servidores desde ese punto en adelante. Esta implementación garantiza que en
varios servidores web basados en procesos, todos los procesos no empiecen enviando la
primera solicitud al mismo servidor.
El tipo de equilibrado de carga predeterminado es Turno circular.
- com.ibm.ws.odr.plugincfg.cluster.PostSizeLimit
- El número máximo de bytes de contenido de solicitud permitido para el plug-in cuando
intenta enviar la solicitud a un servidor. Si se recibe una solicitud con un tamaño mayor
que este, el plug-in finaliza la solicitud.
El valor predeterminado es de -1 bytes, que indica que no hay límite para el tamaño de envío.
- com.ibm.ws.odr.plugincfg.cluster.RemoveSpecialHeaders
- El plug-in añade cabeceras especiales a la solicitud antes de enviarla al servidor.
Estas cabeceras almacenan información sobre la solicitud que puede utilizar la aplicación.
De forma predeterminada, el plug-in elimina estas cabeceras de las solicitudes entrantes antes de
añadir las cabeceras necesarias.
El valor predeterminado es true. Si establece el atributo en false, introduce un posible peligro de seguridad al no eliminar las cabeceras de las solicitudes entrantes.
- com.ibm.ws.odr.plugincfg.cluster.RetryInterval
- Un entero que especifica la cantidad de tiempo que transcurre desde el momento en el
que se escoge un servidor al momento en el que el plug-in intentará establecer de nuevo
una conexión.
El valor predeterminado es 60 segundos.
Servidor
Este elemento es una instancia de servidor que se configura para manejar las solicitudes direccionadas a él, según las reglas de direccionamiento de la configuración del plug-in. El elemento de servidor se corresponde con un servidor de aplicaciones que se ejecuta en la estación de trabajo local o una estación de trabajo remota.
- com.ibm.ws.odr.plugincfg.server.ServerIOTimeout
- Habilita el plugin para definir un valor de tiempo de espera, en segundo, para enviar
solicitudes y leer las respuestas del servidor. Cuando seleccione un valor para este atributo, considere lo siguiente:
- Un servidor puede tardar varios minutos para procesar una solicitud. Definir el valor del atributo ServerIOTimeout demasiado bajo podría que el plugin envíe al cliente una respuesta errónea de servidor falso.
- Si no se ha establecido ningún valor, el plug-in utiliza el valor predeterminado para escribir solicitudes al servidor y para leer las respuestas del servidor hasta que se agota el tiempo espera de conexión TCP. El valor predeterminado es 900.
- Nota: Para versiones anteriores del producto, el valor predeterminado es 0. Si el plug-in utiliza un valor de tiempo de espera predefinido de 0, podría producirse un error.
Para obtener más información sobre cómo configurar el atributo ServerIOTimeout, consulte la nota técnica de configuración del plug-in del servidor web.
- com.ibm.ws.odr.plugincfg.server.ConnectTimeout
- Permite al plug-in establecer conexiones sin bloqueo con el servidor de aplicaciones,
que son útiles cuando el plug-in no puede contactar con el destino para determinar si el
puerto está o no disponible.
Si no se especifica ningún valor, el plug-in efectúa una conexión de bloqueo en la que el plug-in espera hasta que un sistema operativo excede el tiempo de espera y permite al plug-in marcar el servidor como no disponible, unavailable. Un valor mayor que 0 especifica el número de segundos que el plug-in espera una conexión satisfactoria. Si no se establece una conexión después de dicho intervalo de tiempo, el plug-in marca el servidor como unavailable y continúa con otro de los servidores definidos en el clúster.
El valor predeterminado es 0.
- com.ibm.ws.odr.plugincfg.server.ExtendedHandShake
- Se utiliza cuando hay un cortafuegos entre el plug-in y el servidor de aplicaciones.
En tal caso, el plug-in no se migra tras error, según lo esperado.
El plug-in marca un servidor como detenido cuando finaliza connect(). No obstante, cuando hay un cortafuegos entre el plug-in y el servidor de aplicaciones, el método connect() es satisfactorio, aunque el servidor de aplicaciones de fondo esté detenido. Esto hace que el plug-in no se migre tras error correctamente en otros servidores de aplicaciones.
El plug-in contiene este atributo para garantizar que se ha iniciado antes de enviar la solicitud.
El valor por omisión es false.
- com.ibm.ws.odr.plugincfg.server.MaxConnections
- Especifica el número máximo de conexiones pendientes con un servidor que fluyen a
través de un proceso de servidor web en cualquier momento.
El valor predeterminado se establece en -1.
- com.ibm.ws.odr.plugincfg.cluster.WaitForContinue
- Especifica si se debe utilizar el soporte de HTTP 1.1 100 Continue antes de enviar el
contenido de la solicitud al servidor de aplicaciones. El valor por omisión es false.El plug-in no espera la respuesta de 100 Continue del
servidor de aplicaciones antes de enviar el contenido de la solicitud.
Esta propiedad se ignora para las solicitudes POST para impedir que se produzcan anomalías si el servidor de aplicaciones cierra una conexión porque se ha excedido un tiempo de espera.
Habilite esta función cuando configure el plug-in para que trabaje con determinados tipos de cortafuegos de proxy.
Propiedad
- com.ibm.ws.odr.plugincfg.property.ESIEnable
- Se utiliza para habilitar o inhabilitar el procesador ESI (Edge Side Include). Si el
procesador ESI está inhabilitado, se ignorarán los otros elementos ESI del archivo.
El valor predeterminado es true.
- com.ibm.ws.odr.plugincfg.property.ESIMaxCacheSize
- Un entero que especifica, en unidades de 1K byte, el tamaño máximo de la memoria caché. El tamaño máximo predeterminado de la memoria caché es 1024K bytes (1 megabyte). Si la memoria caché está llena, la primera entrada que se va a desalojar de memoria caché es la que caduque antes.
- com.ibm.ws.odr.plugincfg.property.ESIInvalidationMonitor
- Indica si el procesador ESI recibe o no invalidaciones del servidor de
aplicaciones.
El valor por omisión es false.
- com.ibm.ws.odr.plugincfg.property.https.keyring
- Utilice este elemento para especificar los parámetros de inicialización cuando el
protocolo del transporte se establece en HTTPS.
Este atributo es un nombre soportado que reconoce el transporte. El valor predeterminado del elemento de conjunto de claves es raízPerfil/etc/plugin-key.kdb.
- com.ibm.ws.odr.plugincfg.property.https.stashfile
- El valor predeterminado del archivo stash es raízPerfil/node/etc/plugin-key.sth
- com.ibm.ws.odr.plugincfg.property.PluginInstallRoot
- Especifica la vía de acceso de instalación del plug-in. El valor predeterminado es "". Sin embargo, defina el valor en la vía de acceso completa de la raíz de instalación del plug-in o la propiedad no se visualizará en el archivo plugin-cfg.xml.
Consideraciones sobre la generación del archivo plugin-cfg.xml
- Inhabilite la generación automática. Establezca la propiedad personalizada de célula ODCPluginCfgDisabled_<genDefID> en true.
- Para generar un nuevo plug-in, ejecute este mandato:
donde:<WAS_HOME>/bin/wsadmin.sh -lang jython -f <WAS_HOME>/bin/manageODC.py generateHAPluginCfgs <generationDefinitionIDs> <nodeName> <serverName>
- generationDefinitionIDs
- es una lista de los ID de HAPluginCfgGeneration separados por comas con el formato ODCPluginCfg_<genDef>.
- nombreNodo
- es el nombre del nodo que realiza la generación.
- serverName
- es el nombre de proceso que realiza la generación. Cualquier proceso aumentado de
Intelligent Management puede generar la configuración de
HAPluginCfgs on demand, excepto para los procesos de XDAGENT. Por
ejemplo:
<WAS_HOME>/bin/wsadmin.sh -lang jython -f <WAS_HOME>/bin/manageODC.py generateHAPluginCfgs ODCPluginCfg_1,ODCPluginCfg_2 dmgrNodeName dmgr
ODCPluginCfgMinGenerationDelay = 10
Las
definiciones de HAPluginCfgGeneration configuradas se vuelven
a generar cada 10 minutos como máximo. Si el generador recibe una notificación para
volver a crear pluginCfgs, retrasa la generación de
pluginCfgs que se han escrito en los últimos 10 minutos.Para limitar la frecuencia con la que se vuelve a generar un archivo plugin-cfg.xml generado por ODR, establezca la propiedad de JVM com.ibm.ws.odr.plugincfg.minGenerationDelay en un valor que represente el tiempo en minutos entre posibles generaciones y, a continuación, recicle el ODR.
De forma predeterminada, se utiliza el valor de peso de tiempo de ejecución estático configurado para incluir los procesos de ODR detenidos en un archivo plugin-cfg.xml generado.
- Para HAPluginCfgGenerator, establezca la propiedad personalizada de célula ODCPluginCfgOdrIncludeStoppedStatic en false.
- Para archivos plugin-cfg.xml generados por ODR, establezca la propiedad de JVM com.ibm.ws.odr.plugincfg.odrIncludeStoppedStatic en false y, a continuación, recicle el ODR.