![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
Classificação de Pedidos Baseada em Regras
Com qualquer tecnologia baseada em regra, o processamento baseado em regra envolve três áreas básicas: o vocabulário que forma o idioma, a gramática para expressão do vocabulário em linguagem e o mecanismo de processamento da regra.
Vocabulário
O vocabulário consiste nos operadores, palavras-chaves variáveis conhecidas como operandos e instruções de fluxo de controle. O idioma é o Sistema de Mensagens Java™ (JMS 1.1) e a Sintaxe do Seletor de Mensagem. O seletor de mensagem é uma cadeia cuja sintaxe é baseada em um subconjunto da expressão condicional SQL92. A sintaxe da instrução geral é:
operand operator literalExpression [| compoundOperator expression].
No exemplo a seguir,
serverhost like '%ibm.com' or clienthost = 'myhost.raleigh.ibm.com'
serverhost and clienthost são os operandos like e = são os operadores, or é o operador composto e '%ibm.com' e 'myhost.raleigh.ibm.com' são a literalExpression. O [] indica que a expressão é opcional e | indica que após o operador, uma literalExpression ou operador composto pode ser seguido por mais expressões.
- Roteamento
- Serviço
- permitir
- rejeitar
- permitsticky
- redirecionar
Uma instrução completa consiste na expressão da regra e a ação a ser executada é representada de forma diferente, dependendo da origem de entrada. No console administrativo, as ações são separadas em formulários e campos que são facilmente selecionáveis. Se você estiver utilizando script, a instrução completa poderá ser semelhante ao exemplo a seguir:
expression<delimeter>action
Por exemplo, clienthost='localhost' and serverhost like
'%.ibm.com'?permit?DefaultApplication.ear
Do ponto de vista de uma implementação, as classes de trabalho, que são documentos XML, são usadas para capturar as expressões de regras, as ações correspondidas e outros artefatos de implementação. Portanto, uma classe de trabalho é um documento XML que contém zero ou mais elementos matchRules e um ou mais elementos workClassModules.
Operadores
O Intelligent Management suporta os operadores nas expressões de regras. Em geral, é possível não saber qual é o verdadeiro tipo de dados de um determinado operando. Se você usar o Hypertext Transfer Protocol (HTTP), cada operando será tratado como uma cadeia de tipo de dado e usará o operador como um indicador para o tipo de dado real do operando para fins de validação de dados. Um exemplo de um operador que testa um operando que tem um valor nulo é: IS NULL.
Operandos
- HTTP
JMS
SOAP por HTTP representado apenas como SOAP
IIOP (Internet Inter-ORB Protocol)
Um exemplo de um operando para pedidos de HTTP é: MIMEType.