2011-06-25 62 views
2

OpenX信息:在Apache 2.2.19,PHP 5.3.6和MySQL 5.1.56-log下运行的OpenX v2.8.7。主Openx服务器未处理从属统计信息

我在使用分布式OpenX安装时遇到了一些麻烦。

我有一个架构基于一个MASTER服务器与全局数据库和管理界面和一些SLAVE服务器(现在一个)与本地数据库服务横幅。

MASTER的MySQL复制工作正常(因为主服务器中的每个更改都复制到从服务器上)和维护脚本(维护脚本(用于SLAVE的MASTER和maintenance-distributed.php的maintenance.php)看起来像运行良好(没有错误的调试痕迹)。该系统是根据分布式系统的OpenX文档配置的。

这些是运行维护脚本的cronjobs:

MASTER

5 * * * * /usr/local/bin/php /var/www/scripts/maintenance/maintenance.php www.mydomine.com 

SLAVE

10,25,40,55 * * * * /usr/local/bin/php /var/www/scripts/maintenance/maintenance-distributed.php www.mydomine.php 

的问题是,印象总结没有被计算在管理界面上显示(在MASTER服务器上),我有b EEN调试和我结束了同一个结果:

  1. 被服务OK
  2. 从属服务器记录的印象OK
  3. 从属服务器发送数据的横幅返回MASTER OK
  4. 主人从服务器获取数据(表ox_data_bkt_ *已满)
  5. 不是总结管理界面

这是从主数据库中的示例性查询上的数据:

select interval_start, sum(count) from ox_data_bkt_m group by interval_start; 

结果包含了所有的曝光记录,并从从属sended到MASTER。

+---------------------+------------+ 
| interval_start  | sum(count) | 
+---------------------+------------+ 
| 2011-06-25 10:00:00 | 1883133 | 
| 2011-06-25 11:00:00 | 2074979 | 
| 2011-06-25 12:00:00 | 2239609 | 
+---------------------+------------+ 
5 rows in set (0.00 sec) 

但在管理界面上我得到了那个时代没有印象....

尝试新事物,我们意识到脚本脚本/维修/工具/ republish.php实际解决的问题过去的数据,但新的数据仍然没有显示出来。我们发现在MASTER的每个维护周期后使用republish.php脚本都会得到正确的数字,但我认为这是一个肮脏的修复,并且必须是真正的解决方案。

+0

SubniC - 你是怎么重新发布脚本工作?我不断收到以下错误:C:\ apache \ htdocs \ scripts \ maintenance \ tools> C:\ php \ php.exe -f republish.php'ads。 “ourdomain.ca''2012-11-09 01:00:00''2012-11-12 14:00:00'传入republish.php脚本的结束日期不是有效的操作时间间隔结束日期。请在'%Y-%M-%d%H:%m:%s'格式中输入结束日期。 republish.php脚本将不会运行。 – Brad

+0

嗨布拉德,尝试这种方式:php.exe -f republish.php ads.ourdomain.ca“2012-11-09 01:00:00”“2012-11-12 14:00:00” – SubniC

回答

1

问题已修复,这是维护脚本计时的问题。

必须在MASTER节点上调用maintenance.php之前,在slave节点上调用maintenance-distributed.php,但必须在统计数据的最后一小时消失后调用maintenance-distributed.php。 ..只是一个例子来说清楚:

我得到从服务器从00:00:00到00:59:59的印象我在01:01:00在slave上运行maintenance-distributed.php服务器和数据被发送回MASTER节点,现在,例如说在01:05:00我可以在MASTER节点上运行maintenance.php。

这些都是新的cronjobs:

MASTER

5 * * * * /usr/local/bin/php /var/www/scripts/maintenance/maintenance.php www.mydomine.com 

SLAVE

1,10,25,40,55 * * * * /usr/local/bin/php /var/www/scripts/maintenance/maintenance-distributed.php www.mydomine.php 
4

在几乎所有发生这种情况的情况下,主机和从机上的时钟都在不同的时区设置下运行,导致主机寻找根本不存在的原始统计信息(然而)。

+0

嗨艾瑞克,谢谢为了您的答案,我已经检查了一切(系统,PHP和MySQL)的时区配置,并且两台服务器都是相同的...现在我正在运行一些测试,我认为问题可能是维护之间的同步问题的服务器。我会告诉你。 – SubniC

相关问题