WebSphere Extended Deployment, Version 6.0.x     Sistemas Operacionais: AIX,, HP-UX, Linux, Solaris , Windows

Extraindo Nomes de Partição de Pedidos HTTP

Os nomes de partições são extraídos de pedidos HTTP utilizando as expressões de pedidos. Uma expressão de pedido consiste em duas cadeias: a expressão de correspondência e a fórmula de classificação. Juntas, essas cadeias fornecem um mecanismo para classificar pedidos HTTP com base em expressões regulares suportadas por Java. A expressão de correspondência determina como corresponder uma parte da URL e a cadeia de consulta. A fórmula de classificação indica a parte da URL e da cadeia de consulta que especifica a partição quando a expressão for correspondida.

Para determinar se é necessário particionar um pedido HTTP, o ODR (On Demand Router) utiliza o padrão e as classes correspondentes do pacote java.util.regex. Se for encontrada uma correspondência de qualquer expressão de correspondência especificada pelo aplicativo, o pedido possui uma partição associada. O ODR primeiro concatena a URL e a cadeia de consulta para formar uma única cadeia e chama os padrões construídos de todas as expressões de correspondência especificadas pelo aplicativo. Durante uma correspondência, a fórmula de classificação determina como o nome da partição será construído. Um caractere especial, um cifrão, indica a parte da expressão de correspondência a ser utilizada.

Considere um caso em que a expressão de correspondência seja (user=)(*)$ e a fórmula de classificação seja $2. O $2 utiliza a parte da correspondência relacionada à parte (.*), pois é a segunda parte do padrão de correspondência. Por exemplo, se a URL consistir em www.ibm.com/something/user=fred, $1 corresponderá a user=, enquanto $2 corresponderia a fred.

Considere a expressão de correspondência (user=)(*)(rodriguez)$. Suponha que tenha chegado um pedido com uma URL contendo user=adolforodriguez. Com uma fórmula de classificação de $2, o nome da partição resultante seria adolfo. Com uma fórmula de classificação de mypartition$2, o pedido teria um nome de partição de mypartitionadolfo. De forma semelhante, com uma fórmula de classificação de $2$3, o nome da partição resultante seria adolforodriguez.

Observe também que as expressões de correspondência podem se sobrepor. Por exemplo, se você tiver duas expressões de correspondência: (user=)(*)$ e (user=)(*)& e se for recebida uma URL com uma cadeia de consulta contendo user=adolfo&Submit=Enter, as duas expressões corresponderiam. A expressão antiga extrairia adolfo&Submit=Enter com uma fórmula de classificação $2, enquanto a última extrairia adolfo. Como apenas adolfo é um nome de partição válido, ele seria escolhido como o nome da partição. Embora seja típico que a expressão comum "mais específica" seja o destino pretendido, o particionamento HTTP faz uma tentativa para beneficiar uma expressão específica sobre a outra. Em vez disso, todas as expressões são aplicadas até que seja localizado um nome de partição válido ou não exista nenhum.




Related concepts
Particionamento de HTTP

Tópico de Conceito    

Termos de Uso | Feedback Última atualização: Mar 21, 2006 12:52:01 PM EST
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r0/index.jsp?topic=?topic=/com.ibm.websphere.xd.doc/info/WPF51/cwpfhttpnames_pdf.html

© Copyright IBM 2005, 2006. Todos os Direitos Reservados.
Este centro de informações é desenvolvido em tecnologia Eclipse. (http://www.eclipse.org)