1

我在使用 Openx 时遇到问题;这是问题

OpenX::Services::Base.connection 返回由 OpenX::Services::Base.connection 填充的类变量@@connection,如果它之前没有被初始化。

它是一个类变量的问题是它在连接中持续存在,这意味着如果活动中存在停顿,我的站点和 OpenX 之间的 XMLRPC 会话将超时,并且 OpenX API 没有用于通信过期会话的规定,无论如何这都是浪费的,因为它需要在每次通信之前请求一个请求,以验证会话是否仍然有效。

我认为更好的方法是在任何需要 OpenX 支持的请求开始时实例化一个连接,并在最后关闭它,确保会话不会超时XMLRPC 方面的事情。

使用 OpenX / OpenX XMLRPC 时有没有其他人遇到过这种情况?如果是这样,您是如何解决此问题的?

4

2 回答 2

2

我在 OpenX RPC 调用周围有一个 try/catch 块,并且我编写了一个异常翻译器。如果我检测到会话超时,我将再次执行登录操作,我将获取新的会话 ID,并再次运行失败的 OpenX 调用。为了使会话保持活动状态,它比拥有一个 cron 作业要复杂一些,但性能和鲁棒性更高(在我看来)。

于 2011-10-04T11:00:19.030 回答
0

我们面临同样的问题。我们的解决方案:创建一个未经身份验证的控制器,它与 OpenX API 进行一些简单的交互(只是为了让它保持运行状态),并让这个 URL 由一个 cron 作业每 5-10 分钟调用一次。

你用了什么解决方案?

于 2009-09-10T08:33:41.673 回答