WebSphere Virtual Enterprise, Version 6.1.1
             Sistemas operativos: AIX, HP-UX, Linux, Solaris, Windows,


Clasificación de solicitudes basadas en reglas

Con cualquier tecnología basada en reglas, el proceso basado en reglas implica tres áreas básicas: el vocabulario que forma el lenguaje, la gramática para expresar el vocabulario en sentencias y el motor de proceso de reglas.

Vocabulario

El vocabulario consta de operadores, palabras clave variables que se conocen como operandos y las sentencias de flujo de control. El lenguaje es Java Message Service (JMS 1.1) y Message Selector Syntax. El selector de mensajes es una serie cuya sintaxis se basa en un subconjunto de la expresión condicional SQL92. La sintaxis de sentencia general es:

operando operador Expresiónliteral [| Operadorcompuesto expresión] .

En el ejemplo siguiente,

serverhost like '%ibm.com' or clienthost = 'myhost.raleigh.ibm.com'

serverhost y clienthost son operandos, like y = son operadoresor es el operador compuesto y '%ibm.com' y 'myhost.raleigh.ibm.com' son la expresión literal. Con [] se indica que la expresión encerrada es opcional y con | se indica que después del operador, una expresión literal o un operador compuesto puede ir seguido de más expresiones.

El resultado de una expresión es una acción que se lleva a cabo. Desde un punto de vista gramatical, estas acciones son literales que proporciona el proveedor de políticas. Se admiten dos tipos de políticas:
  1. Direccionamiento
  2. Servicio
Las acciones que se llevan a cabo se dictan mediante el proveedor de políticas. Para el direccionamiento, las acciones son:
  • permit
  • reject
  • permitsticky
  • redirect
Cada una de las acciones tiene el destino adecuado: el receptor de una acción. Si el resultado de evaluar una expresión es llevar a cabo la acción de permit, el destino de esa acción es la aplicación para la que se permite el direccionamiento. Para políticas de servicio, el destino se encapsula en la acción y la acción es una clase de transacción.

Una sentencia completa consta de la expresión de regla y la acción que se va a llevar a cabo se representa de modo distinto en función del origen de entrada. En la consola administrativa, las acciones se separan en formularios y campos que se pueden seleccionar fácilmente. Si está utilizando scripts, la sentencia completa puede ser similar a la siguiente:

expression<delimeter>action
Por ejemplo, clienthost='localhost' and serverhost like
'%.ibm.com'?permit?DefaultApplication.ear

Desde un punto de vista de implementación, las clases de trabajo, que son documentos XML, se utilizan para capturar las expresión de reglas, acciones coincidentes y otros artefactos de implementación. Por lo tanto, una clase de trabajo es un documento XML que contiene cero o más elementos matchRules, y uno o más elementos workClassModules.

Operadores

WebSphere Virtual Enterprise soporta los operadores en las expresiones de reglas. En general, es posible que no conozca el tipo de datos verdadero. Si utiliza el protocolo HTTP (Hypertext Transfer Protocol), todos los operandos se tratan como una serie de tipo de datos y utilizan el operador como un indicador para el tipo de datos real del operando para fines de validación de datos. Un ejemplo de un operador comprueba si un operando que tiene un valor nulo es: IS NULL.

Operandos

Cuando se añaden nuevos protocolos y se definen nuevos conjuntos de operandos, los operandos son válidos dentro de los ámbitos de protocolo. Si se especifica un operando en un ámbito para el que no es válido, se indica una condición de error. En este release, los protocolos admitidos son:
  • HTTP
  • [For distributed platforms] JMS
  • [For distributed platforms] Internet Inter-ORB Protocol (IIOP)

Un ejemplo de un operando de solicitudes HTTP es: MIMEType.




Referencia relacionada
Políticas de direccionamiento y servicio
Script workclassoperations.py
Tema de concepto    

Condiciones de uso | Comentarios

Última actualización: 22-sep-2009 09H39' EDT
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r1m1/index.jsp?topic=/com.ibm.websphere.ops.doc/info/odoe_task/codoerule.html