- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
foreach ($balancedSlots as $cluster) {
if ($cluster['type']=='cluster'){
foreach ($cluster['servers'] as $ip=>$server) {
if ($GLOBALS['mode']!='test'){
$GLOBALS['dataVar'][$i] = array();
if (isset($server['snmp_server'])){
$p = preg_split('/,/', $server['snmp_server']);
$GLOBALS['dataVar'][$i]['proc_handle'] = popen(dirname(__FILE__).'/snmp_server.sh '.$p[0].' '.$p[1], 'r');
$GLOBALS['dataVar'][$i]['snmp_params'] = $p;
$GLOBALS['dataVar'][$i]['snmp_result'] = array('ifName'=>array(), 'counter'=>array());
}
else {
//print "proc_handle: ".$server['snmp_cmd']."\n";
$GLOBALS['dataVar'][$i]['proc_handle'] = popen($server['snmp_cmd'], 'r');
}
$GLOBALS['dataVar'][$i]['server']=$server;
$GLOBALS['dataVar'][$i]['server']['ip']=$ip;
$GLOBALS['dataVar'][$i]['eb'] = event_buffer_new($GLOBALS['dataVar'][$i]['proc_handle'], "read_result", NULL, "error_func", $i);
event_buffer_timeout_set($GLOBALS['dataVar'][$i]['eb'], 4, 60);
event_buffer_base_set($GLOBALS['dataVar'][$i]['eb'], $GLOBALS['base']);
event_buffer_enable($GLOBALS['dataVar'][$i]['eb'], EV_READ);
}
elseif ($GLOBALS['mode']=='test')
{
if (!array_key_exists($ip, $testLastServers)) {
$testLastServers[$ip]=0;
}
if ($testServersData[$ip][$testServersIteration]!==false){
$GLOBALS['result'][$ip] = new ArrayObject(array('counter64'=>$testLastServers[$ip]+$testServersData[$ip][$testServersIteration], 'ts'=>$GLOBALS['mesure_time']));
$testLastServers[$ip] = $GLOBALS['result'][$ip]['counter64'];
}
}
$i++;
}
}
}
Попытка одного товарища использовать библиотеку libevent. Видно щедрое использование глобальных переменных.
sayidandrtfm 31.07.2012 21:38 # +11
defecate-plusplus 31.07.2012 21:52 # +7
тарасохульничество
istem 31.07.2012 22:16 # +6
defecate-plusplus 31.07.2012 22:32 # +7
vistefan 31.07.2012 22:45 # +3
vistefan 31.07.2012 22:47 # 0
defecate-plusplus 31.07.2012 22:51 # +1
guest 31.07.2012 22:59 # 0
Пользователь guest забанен до 03.08.2012. Причина: оскорбления окружающих.
vistefan 31.07.2012 23:01 # +3
istem 31.07.2012 23:08 # +3
Тут после отпуска, такие эволюции свершаются... Неужели это нигде не мемуаризируется?
roman-kashitsyn 31.07.2012 23:28 # +6
vistefan 31.07.2012 23:32 # +3
А кадрам вроде Тараса - опознавательные знаки. И вообще, ачивки.
scriptin 31.07.2012 23:26 # +2