![[z/OS]](ngzos.gif)
DEFINE CFSTRUCT (definir estructura de aplicación de recurso de acoplamiento) en z/OS
Utilice el mandato MQSC DEFINE CFSTRUCT para definir la capacidad de nivel CF del gestor de colas, el entorno de descarga de mensajes y los parámetros de copia de seguridad y recuperación para una estructura de la aplicación de recurso de acoplamiento.
Utilización de mandatos MQSC en z/OS
Para obtener información sobre cómo utilizar los mandatos MQSC en z/OS®, consulte Orígenes desde los que puede emitir mandatos MQSC y PCF en IBM® MQ for z/OS.
Puede emitir este mandato desde los orígenes 2CR. Para obtener una explicación de los símbolos de origen, consulte Orígenes desde los que puede emitir mandatos MQSC y PCF en IBM MQ for z/OS.
Notas sobre el uso de DEFINE CFSTRUCT
- Este mandato sólo es válido en z/OS cuando el gestor de colas es miembro de un grupo de compartición de colas.
- Este mandato no puede especificar la estructura de administración CF (CSQ_ADMIN).
- Para que las colas puedan utilizar la estructura CF que se acaba de definir, antes debe definirse la estructura en el archivo de política de la Gestión de recursos de acoplamiento (CFRM).
- Sólo es posible llevar a cabo la copia de seguridad y recuperación de las estructuras CF que tienen definido RECOVER(YES).
Descripciones de parámetro para DEFINE CFSTRUCT
- (nombre-estructura)
- Nombre de la estructura de la aplicación del recurso de acoplamiento que tiene la capacidad de nivel de CF de gestor de colas y los parámetros de copia de seguridad y recuperación que desee definir. Este parámetro es necesario.
El nombre:
- No puede tener más de 12 caracteres.
- Debe empezar por una letra en mayúsculas (entre A y Z).
- Sólo puede incluir los caracteres entre A y Z y entre 0 y 9.
El nombre del grupo de compartición de colas al que está conectado el gestor de colas tiene como prefijo el nombre que proporcione. El nombre del grupo de compartición de colas es siempre de cuatro caracteres, rellenado con símbolos @ si es necesario. Por ejemplo, si utiliza un grupo de compartición de colas denominado
NY03y proporciona el nombrePRODUCT7, el nombre de la estructura del recurso de asociación resultante esNY03PRODUCT7. La estructura administrativa para el grupo de compartición de colas (en este casoNY03CSQ_ADMIN) no se puede utilizar para almacenar mensajes. - CFCONLOS
Este parámetro especifica la acción que debe llevarse a cabo cuando un gestor de colas pierde la conectividad con la estructura CF. El valor puede ser:
- ASQMGR
La acción que se lleva a cabo se basa en el valor del atributo de gestor de colas CFCONLOS.
- TERMINATE
El gestor de colas finaliza cuando se pierde la conectividad con la estructura.
- TOLERATE
El gestor de colas tolera la pérdida de conectividad con la estructura sin terminar.
Este parámetro sólo es válido desde CFLEVEL(5).
- CFLEVEL ( entero )
- Especifica
el nivel de posibilidad funcional de esta estructura de aplicación CF. El valor puede ser uno de los siguientes:
- 1
- Una estructura CF que un gestor de colas puede "crear automáticamente" con el nivel de mandatos 520.
- 2
- Una estructura CF con el nivel de mandatos 520 que únicamente puede crear o suprimir un gestor de colas con el nivel de mandatos 530 o superior.
- 3
Una estructura CF con el nivel de mandatos 530. Este valor de CFLEVEL es necesario si se desea utilizar mensajes persistentes en colas compartidas (si se establece RECOVER(YES)), para la agrupación de mensajes (cuando se define una cola local con INDXTYPE(GROUPID)), o en ambos casos.
Sólo puede aumentar el valor de CFLEVEL a 3 si todos los gestores de colas del grupo de compartición de colas están en el nivel de mandatos 530 o superior; esto es para asegurarse de que no hay conexiones latentes del nivel de mandatos 520 con colas que hagan referencia a la estructura.
Sólo puede especificar un valor de CFLEVEL inferior a 3 si todas las colas que hacen referencia a la estructura CF están vacías (no tienen mensajes ni actividad sin confirmar) y cerradas.
- 4
Este parámetro CFLEVEL da soporte a todas las funciones de CFLEVEL(3). CFLEVEL(4) permite que las colas definidas con estructuras CF en este nivel tengan mensajes con una longitud superior a 63 KB.
Sólo un gestor de colas con un nivel de mandato de 600 o superior puede conectarse a una estructura CF en CFLEVEL(4).
Sólo puede aumentar el valor de CFLEVEL a 4 si todos los gestores de colas del grupo de compartición de colas están en el nivel de mandatos 600 o superior.
Sólo puede especificar un valor de CFLEVEL inferior a 4 si todas las colas que hacen referencia a la estructura CF están vacías (no tienen mensajes ni actividad sin confirmar) y cerradas.
- 5
- Este CFLEVEL soporta todas las funciones para CFLEVEL(4). Además, CFLEVEL(5) permite las siguientes funciones nuevas. Si se modifica un CFSTRUCT existente en CFLEVEL(5), debe revisar otros atributos como se indica a continuación:
- las colas definidas con estructuras CF en este nivel pueden tener datos de mensajes descargados en conjuntos de datos de mensajes compartidos (SMDS) o Db2®, bajo el control del atributo OFFLOAD. Los parámetros de umbral de descarga y tamaño (tales como OFFLD1TH y OFFLD1SZ) determinan si algunos mensajes en particular se descargan en función de su tamaño y del uso de la estructura CF actual. Si se utiliza la descarga SMDS, se respetan los atributos DSGROUP, DSBUFS, DSEXPAND y DSBLOCK.
- las estructuras en CFLEVEL(5) permiten al gestor de colas tolerar una pérdida de conectividad con la estructura CF. El atributo CFCONLOS determina el comportamiento del gestor de colas cuando se detecta una pérdida de conectividad, y el atributo RECAUTO controla el comportamiento automático de recuperación de la estructura subsiguiente.
- los mensajes que contienen propiedades de mensaje IBM MQ se almacenan en un formato diferente en colas compartidas en una estructura CFLEVEL (5). Este formato conduce a optimizaciones del proceso interno. También hay otras funciones de migración de aplicaciones que están disponibles y se habilitan mediante el atributo PROPCTL de cola.
Sólo un gestor de colas con un nivel de mandato de 710 o superior puede conectarse a una estructura CF en CFLEVEL(5).
Nota:Puede reducir el valor de CFLEVEL a uno inferior a 5, si todas las colas que hacen referencia a la estructura CF están vacías, es decir, las colas y la estructura CF no tienen mensajes ni actividad sin confirmar y están cerradas.
- DESCR ( serie )
- Comentario
en texto sin formato que proporciona información descriptiva del objeto cuando
un operador emite el mandato DISPLAY CFSTRUCT.
La serie debe contener sólo caracteres visualizables. La longitud máxima es de 64 caracteres. En una instalación DBCS, contiene caracteres DBCS (sujetos a una longitud máxima de 64 bytes).
Nota: Si se utilizan caracteres que no están en el identificador de juego de caracteres codificados (CCSID) para este gestor de colas, es posible que se conviertan incorrectamente si la información se envía a otro gestor de colas. - LIKE ( nombre-estructura )
- El nombre de un objeto CFSTRUCT, con atributos utilizados para modelar esta definición.
Los valores iniciales de todos los atributos se copian del objeto, pero los atributos DSGROUP se ignoran porque cada estructura requiere su propio valor exclusivo.
- OFFLOAD
Especifique si los datos de mensajes descargados deben almacenarse en un grupo de conjuntos de datos de mensajes compartidos o en Db2.
- SMDS
- Descargue los mensajes del recurso de acoplamiento en el conjunto de datos de mensajes compartidos (SMDS). Este valor es el valor predeterminado asumido cuando se define una nueva estructura con CFLEVEL(5).
- DB2
- Descargar mensajes del recurso de acoplamiento en Db2. Este valor es el valor predeterminado asumido cuando una estructura existente se aumenta a CFLEVEL(5) utilizando DEFINE con la opción REPLACE.
La descarga de mensajes utilizando Db2 tiene un impacto significativo en el rendimiento. Si desea utilizar las reglas de descarga como medios para aumentar la capacidad, la opción SMDS se debe especificar o asumir.
Este parámetro sólo es válido desde CFLEVEL(5). En CFLEVEL (4), cualquier descarga de mensajes siempre se realiza en Db2, y sólo se aplica a mensajes mayores que el tamaño máximo de entrada del recurso de acoplamiento.Nota:Si cambia la técnica de descarga (de Db2 a SMDS o de otro modo), todos los mensajes nuevos se grabarán utilizando el nuevo método, pero los mensajes grandes existentes almacenados utilizando la técnica anterior todavía se pueden recuperar. La tabla de mensajes de Db2 relevante o los conjuntos de datos de mensajes compartidos seguirán utilizándose hasta que los gestores de colas hayan detectado que no hay más mensajes almacenados en el formato antiguo.
Si SMDS se especifica o se asume, el parámetro DSGROUP también es necesario. Se puede especificar en el mismo mandato o en un mandato DEFINE o ALTER anterior para la misma estructura.
- OFFLD1TH(percentage) OFFLD1SZ(size)
- OFFLD2TH(percentage) OFFLD2SZ(size)
- OFFLD3TH(percentage) OFFLD3SZ(size)
Especifique reglas para cuando los mensajes menores que el tamaño máximo de entrada del recurso de acoplamiento se descargan en el almacenamiento externo (conjuntos de datos de mensajes compartidos o tablas Db2 ) en lugar de almacenarse en la estructura de la aplicación. Estas reglas se pueden utilizar para aumentar la capacidad efectiva de la estructura. El mensaje descargado todavía requiere una entrada en el recurso de acoplamiento que contenga información de control del mensaje y un descriptor que haga referencia a los datos de mensaje descargados, pero la cantidad del espacio de estructura que se necesita es menor que la cantidad que se necesitaría para almacenar todo el mensaje.
Si los datos del mensaje son muy pequeños (del orden de 100 bytes), podrían caber en la misma entrada del recurso de acoplamiento que la información de control del mensaje, sin necesitar elementos de datos adicionales. En este caso, no se puede ahorrar espacio, así que se ignoran las reglas de descarga y los datos del mensaje no se descargan. El número real varía, dependiendo de si se utiliza más que las cabeceras predeterminadas o bien si se almacenan las propiedades del mensaje.
Los mensajes que exceden el tamaño máximo de la entrada del recurso de acoplamiento (63,75 KB que incluye información de control) siempre se descargan ya que no se pueden almacenar en una entrada del recurso de acoplamiento. Los mensajes donde el cuerpo de mensaje excede los 63 KB también se descargan para garantizar que está disponible suficiente espacio para la información de control. Las reglas adicionales para solicitar la descarga de mensajes menores se pueden especificar utilizando estos pares de palabras clave. Cada regla indica que cuando el uso de la estructura (en elementos o entradas) exceda el valor de porcentaje de umbral especificado, los datos del mensaje se descargarán si el tamaño total de la entrada del recurso de acoplamiento necesario para almacenar todo el mensaje (incluidos los datos, la cabecera y los descriptores del mensaje) excede el valor de tamaño especificado. El conjunto mínimo para los dos elementos de cabeceras y descriptores requiere 512 bytes, sin embargo, esto podría ser mayor si se añaden otras cabeceras o propiedades. Esta figura también sería mayor si se utilizara una versión de MQMD mayor que 1.
- porcentaje
- El valor de porcentaje del umbral de uso es un entero en el rango comprendido entre 0 (significa que esta regla siempre se aplica) y 100 (significa que esta regla sólo se aplica cuando la estructura está llena). Por ejemplo, OFFLD1TH(75) OFFLD1SZ(32K) significa que cuando la estructura está más del 75% llena, los mensajes de más de 32 kilobytes de tamaño se descargan.
- size
- El valor de tamaño de mensaje debe especificarse como un entero seguido de K, que indica el número de kilobytes en el rango de 0K a 64K. Puesto que los mensajes que exceden los 63,75 KB siempre se descargan, el valor 64K está autorizado como una forma sencilla para indicar que la regla no se está utilizando.
En general, cuanto menores sean los números, más mensajes se descargan.
Un mensaje se descarga si cualquier regla de descarga coincide. El convenio normal es que una regla posterior sería para un nivel de uso superior y un tamaño de mensaje menor que uno anterior, pero no se realiza ninguna comprobación de la coherencia o la redundancia entre las reglas.
Cuando el proceso ALTER de la estructura está activo, el número de elementos o entradas utilizados puede exceder temporalmente el número total notificado, lo que da un porcentaje superior a 100, porque los nuevos elementos o las nuevas entradas quedan disponibles durante el proceso de ALTER, pero el total sólo se actualiza cuando ALTER se completa. En estos casos, una regla que especifique 100 para el umbral puede temporalmente entrar en vigor. Si una regla no está pensada para ser utilizada, debería especificar 64K como tamaño.
Los valores predeterminados asumidos para las reglas de descarga cuando se define una nueva estructura en CFLEVEL(5) o se actualiza una estructura existente en CFLEVEL(5) dependen de la opción del método OFFLOAD. Para OFFLOAD(SMDS), las reglas predeterminadas especifican cantidades crecientes de descarga a medida que la estructura se llena. Esto aumenta la capacidad de la estructura en vigor con un impacto mínimo en el rendimiento. Para OFFLOAD ( Db2 ), las reglas predeterminadas tienen los mismos valores de umbral que para SMDS, pero los valores de tamaño se establecen en 64K para que las reglas nunca se apliquen y los mensajes solo se descarguen si son demasiado grandes para almacenarse en la estructura, como para CFLEVEL (4).
Para OFFLOAD(SMDS) los valores predeterminados son:- OFFLD1TH(70) OFFLD1SZ(32K)
- OFFLD2TH(80) OFFLD2SZ(4K)
- OFFLD3TH(90) OFFLD3SZ(0K)
Para OFFLOAD ( Db2 ) los valores predeterminados son:- OFFLD1TH(70) OFFLD1SZ(64K)
- OFFLD2TH(80) OFFLD2SZ(64K)
- OFFLD3TH(90) OFFLD3SZ(64K)
Si la opción de método OFFLOAD se cambia de Db2 a SMDS o de nuevo cuando las reglas de descarga actuales coinciden todas con los valores predeterminados para el método antiguo, las reglas de descarga se conmutan a los valores predeterminados para el método nuevo. Sin embargo, si alguna de las reglas ha cambiado, los valores actuales se mantienen al conmutar el método.
Estos parámetros sólo son válidos a partir de CFLEVEL(5). En CFLEVEL (4), cualquier descarga de mensajes siempre se realiza en Db2, y sólo se aplica a mensajes mayores que el tamaño máximo de entrada del recurso de acoplamiento.
- DSGROUP
Para OFFLOAD(SMDS), especifique el nombre de conjunto de datos genérico que se utilizará para el grupo de conjuntos de datos de mensajes compartidos asociado a esta estructura (uno para cada gestor de colas), con exactamente un asterisco que indique dónde debe insertarse el nombre del gestor de colas para formar el nombre de conjunto de datos específico.
- dsname.prefix.*.dsname.suffix
- El valor debe ser un nombre de conjunto de datos válido cuando el asterisco se
sustituye por un nombre de gestor de colas de hasta cuatro caracteres.
Todo el valor de parámetro debe especificar entre comillas.
Este parámetro no se puede cambiar después de haber activado cualquier conjunto de datos para la estructura.
Si se especifica o asume SMDS, el parámetro DSGROUP también se debe especificar.
Este parámetro sólo es válido desde CFLEVEL(5).
- DSBLOCK
Para OFFLOAD(SMDS), especifique el tamaño de bloque lógico, que es la unidad en la que se asigna el espacio de conjuntos de datos de mensajes compartidos a colas individuales.
- 8K
- 16K
- 32K
- 64K
- 128K
- 256K
- 512K
- 1M
- Cada mensaje se escribe empezando en la página siguiente dentro del bloque actual y se le asignan más bloques según sea necesario. Un tamaño mayor reduce los requisitos de gestión de espacio y reduce la E/S para mensajes grandes, pero aumenta los requisitos de espacio de almacenamiento intermedio y los requisitos de espacio en disco para colas pequeñas.
Este parámetro no se puede cambiar después de haber activado cualquier conjunto de datos para la estructura.
Este parámetro sólo es válido desde CFLEVEL(5).
- DSBUFS
Para OFFLOAD(SMDS), especifique el número de almacenamientos intermedios que se van a asignar en cada gestor de colas para acceder a conjuntos de datos de mensajes compartidos, como un número comprendido entre 1 y 9999. El tamaño de cada almacenamiento intermedio es igual al tamaño del bloque lógico. Los almacenamientos intermedios SMDS se asignan en objetos de memoria que residen en almacenamiento z/OS de 64 bits (por encima de la barra).
- número
- Este parámetro se puede alterar temporalmente para gestores de colas individuales utilizando el parámetro DSBUFS en ALTER SMDS.
Cuando se altera este parámetro, los gestores de colas que ya están conectados a la estructura (y que no tienen un valor de alteración temporal DSBUFS individual) aumentan o reducen dinámicamente el número de almacenamientos intermedios de conjunto de datos que se utilizan para que esta estructura coincida con el nuevo valor. Si no se puede alcanzar el valor de destino especificado, el gestor de colas afectado ajusta el parámetro DSBUFS asociado a su propia definición SMDS individual (como para el mandato ALTER SMDS) para coincidir con el nuevo número real de almacenamientos intermedios.
Este parámetro sólo es válido desde CFLEVEL(5).
- DSEXPAND
Para OFFLOAD(SMDS), este parámetro controla si el gestor de colas debe expandir un conjunto de datos de mensajes compartidos cuando éste queda casi lleno, y se necesitan más bloques en el conjunto de datos.
- SÍ
- La expansión está soportada.
Cada vez que es necesaria una expansión, el conjunto de datos se amplía mediante la asignación secundaria especificada cuando se definió el conjunto de datos. Si no se especificó ninguna asignación secundaria, o se especificó como cero, se utiliza una cantidad de asignación secundaria de aproximadamente el 10% del tamaño existente.
- NO
- No se lleva a cabo ninguna ampliación de conjunto de datos automática.
Este parámetro se puede alterar temporalmente para gestores de colas individuales utilizando el parámetro DSEXPAND en ALTER SMDS.
Si un intento de expansión falla, la alteración temporal DSEXPAND para el gestor de colas afectado se cambia automáticamente a NO para evitar más intentos de expansión, pero se puede volver a cambiar a YES utilizando el mandato ALTER SMDS para permitir otros intentos de expansión.
Cuando este parámetro se modifica, los gestores de colas que ya están conectados a la estructura (y que no tienen un valor individual de alteración temporal DSEXPAND) empiezan a utilizar inmediatamente el nuevo valor de parámetro.
Este parámetro sólo es válido desde CFLEVEL(5).
- RECOVER
- Especifica
si la estructura de aplicación da soporte a la recuperación CF. Los valores son:
- NO
- La recuperación de la estructura de aplicación CF no está soportada. (El sinónimo es N).
- SÍ
- La recuperación de la estructura de aplicación CF está soportada. (El sinónimo es Y).
Sólo puede cambiar RECOVER (NO) a RECOVER (YES) si todos los gestores de colas del grupo de compartición de colas están en el nivel de mandatos 530 o superior; esto es para asegurarse de que no hay conexiones latentes del nivel de mandatos 520 con colas que hagan referencia a CFSTRUCT.
Sólo puede cambiar RECOVER(YES) por RECOVER(NO) si todas las colas que hacen referencia a la estructura CF están vacías (no tienen mensajes ni actividad sin confirmar) y cerradas.
- RECAUTO
- Especifica la acción de recuperación automática que debe llevarse a cabo cuando
un gestor de colas detecta que la estructura ha fallado o cuando un gestor de
datos pierde la conectividad con la estructura y ninguno de los sistemas SysPlex tiene
conectividad con el recurso de acoplamiento en el que está asignada la
estructura. Los valores pueden ser:
- SÍ
- La estructura y los conjuntos de datos de mensaje compartidos asociados que también necesitan recuperación se recuperarán automáticamente. (El sinónimo es Y.)
- NO
- La estructura no se recuperará automáticamente. (El sinónimo es N).
Este parámetro no tiene ningún efecto para estructuras definidas con RECOVER(NO).
Este parámetro sólo es válido desde CFLEVEL(5).
- REPLACE y NOREPLACE
- Define si la definición existente debe sustituirse por ésta. Este parámetro es opcional.
- REPLACE
- La definición debe reemplazar cualquier definición existente del mismo nombre. Si no existe ninguna definición, se creará una. Si utiliza la opción REPLACE, todas las colas que utilizan esta estructura CF deben estar vacías y cerradas.
- NOREPLACE
- La definición no debe reemplazar ninguna definición existente que tenga el mismo nombre.
