Um PSSB (Partitioned Stateless Session Bean) e o PRSB podem fornecer uma interface diretamente para chamadas de método remoto para a infra-estrutura do servidor remoto (ou localmente, bem como, se estiver na mesma JVM do lado do servidor). No entanto, geralmente os programadores desejam ter uma única fachada para estes tipos de bean de estrutura de WPF (Recurso de Particionamento) e a implementação do servidor executaria a funcionalidade de bean PSSB e PRSB. Isto não se aplica apenas a programadores de EJB (Enterprise JavaBeans), mas também aos que implementam servlets, por exemplo. Para implementar isso, é fornecido um simples exemplo: o WPFFacadePartitionSample.
Esta amostra armazena em cache o home remoto de um bean PSSB de exemplo e fornece uma implementação de método única, que não pode ser roteada, que executa o método PSSB na JVM do servidor. O código fonte é incluído no WPFFacadePartitionSample.ear.
Esta abordagem possui uma vantagem. Se o cliente utilizar apenas uma interface façade e a parte de roteamento do cliente PSSB/PRSB for executada na infra-estrutura do servidor, a funcionalidade de roteamento geral será mais rápida, pois as informações de estado de roteamento do cliente não precisam ser transferidas por download e armazenadas em cache na JVM do cliente que está fazendo o pedido. Por exemplo, o cliente de amostra WPFKeyBasedPartitionSample.ear (WPFKeyBasedPartitionClient.java) utiliza a JNDI e instancia diretamente a instância home do PSSB e cria uma instância a partir dela. Cada Remote Method Invocation na instância requer que a JVM do cliente adquira informações de roteamento, faça download da JVM do cliente e, em seguida, armazene-a em cache. A etapa de download pode incluir sobrecarga na implementação do cliente em relação ao desempenho (os dados de roteamento são armazenados em cache e armazenados na memória para ambos os casos, portanto, não existe uma economia de base de memória). Para o caso em que uma solução do usuário possui milhares de partições e muitos clientes em JVMs do cliente separadas, podem surgir gargalos durante a transferência desta grande quantidade de informações e, se possível, é melhor evitar isso.
As abordagens façade e não-façade são suportadas e úteis em alguns cenários.
Related concepts
Visão Geral do EJB Particionado