há muitos anos, temos usado um servidor Apache com plugin Mod_wl para balancear sessões para vários servidores web backend Weblogic.
Agora, depois de um tempo, também começamos a usar o mesmo Apache para reverter o proxy para outras aplicações internas. Então, agora estou me perguntando por que estamos usando mod_wl e não apenas o servidor Apache, seu próprio mod_proxy e mod_proxy_balancer para balancear nossos próprios servidores Weblogic de back-end?
Existe algum benefício neste plugin proprietário? Ou será que anos atrás o mesmo não era tão fácil de conseguir apenas com o Apache Config? Eu tentei uma configuração sem o plugin Mod_wl para alguns testes e parece estar funcionando bem apenas para a permanência da sessão, parece que tive que adicionar um novo cookie através do Apache, pois não está funcionando com nosso J2SESSIONID existente definido pelo Weblogics para alguns razão.
Então o seguinte
Header add Set-Cookie "J2ROUTE=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
<Proxy balancer://backends>
BalancerMember http://localhost:9001 route=1
BalancerMember http://localhost:9002 route=2
ProxySet stickysession=J2ROUTE
</Proxy>
parece fazer o mesmo que esta configuração anterior usando mod_wl:
SetHandler weblogic-handler
WebLogicCluster localhost:9001,localhost:9002
WLCookieName J2SESSIONID
É claro que este é um exemplo de configuração simplificado. Então, não tenho certeza de continuar usando o plugin proprietário enquanto ele funciona, não muda uma equipe vencedora? Ou vá para a solução Apache mais opensource.
Responder1
O plug-in weblogic "conversa" com o cluster de back-end e atualiza a lista de back-ends disponíveis que qualquer membro do cluster relata, como em, você pode ter vários novos membros do cluster sem ter que mexer na configuração relacionada ao Apache.
A Oracle também anuncia o WLSRequest como uma maneira mais ágil ou menos pesada de especificar um determinado local de proxies reversos para o Weblogic do que o método "SetHandler".
Dito isto, mod_wl é de terceiros e até agora tem problemas comprovados com o evento mpm, como em, quando você emite um Graceful, ele certamente irá travar os processos usados em um ciclo final de finalização graciosa até que você emita uma reinicialização real, você pode Não use também maxconnectionsperchild ou você perderá filhos ao longo do tempo devido ao mesmo afeto (acho que os desenvolvedores do httpd estão resolvendo isso na versão 2.4.33 prestes a ser lançada).
Então, eu revisaria a documentação do Oracle e testaria ambas as opções, mas ultimamente também estou inclinado a optar por não terceiros, ou seja, usar mod_proxy.
Eu ficaria feliz se você relatasse depois de tentar.