Pergunta

Estou tendo problemas com o OpenX; aqui é a questão

OpenX :: Serviços :: Base.connection retorna a variável de classe @@ conexão que é povoada por OpenX :: Serviços :: Base.connection se nunca tiver sido inicializado.

O problema com ele sendo uma variável de classe é que ele persiste através de conexões, o que significa que há uma calmaria na atividade, a sessão XMLRPC entre o meu site e OpenX irá expirar, ea API OpenX não tem provisões para comunicar uma sessão expirada, o que seria um desperdício de qualquer maneira, uma vez que exigiria um pedido antes de cada comunicação apenas para verificar se a sessão ainda era válido.

O que eu acho que seria a melhor maneira de fazê-lo seria instanciar uma ligação no início de qualquer pedido que necessita de apoio OpenX, e fechá-lo no final, garantindo que não há possibilidade de um tempo- sessão para fora no lado do XMLRPC das coisas.

Tem mais alguém encounted isso quando usando OpenX / OpenX XMLRPC? Se assim como você resolver esse problema?

Foi útil?

Solução

Eu tenho um bloco try / catch em torno da chamada OpenX RPC, e eu escrevi um tradutor exceção. Se eu detectar uma sessão de tempo limite vou executar uma vez a operação de login, eu tomarei a nova ID de sessão e eu vou correr a chamada OpenX falhou novamente. É um pouco mais complicado do que ter um trabalho cron, a fim de manter a sessão viva, mas de maior performance e robusta (na minha opinião).

Outras dicas

Nós enfrentamos o mesmo problema. Nossa solução: criar um controlador não autenticado que faz algumas interações simples com a API OpenX (apenas para mantê-lo vivo) e ter esta URL invocado por um trabalho cron a cada 5-10 min

.

Que solução você usou?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top