|
1
|
sudo apt-get install beanstalkd |
|
1
|
vim /etc/default/beanstalkd |
|
1
2
3
|
/etc/init.d/beanstalkd startlsof -i:11300/etc/init.d/beanstalkd stop |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#!/usr/bin/php<?phprequire_once ‘Configuration.php‘;require_once ‘Record.class.php‘;require_once ‘BeanStalk.class.php‘;$now=time();$model = new RecordModel
();$records=$model->checkStartRecord($now);//print_r($records);//exit();$beanstalk =
BeanStalk::open ( array ( ‘servers‘ => array ( Configuration::$record_config[‘beanStak‘] ), ‘select‘ => ‘random
peek‘ )
);$beanstalk->use_tube
( ‘records‘ );foreach ( $records as $record )
{ $beanstalk->put
( 0, 0, 10, json_encode ( $record )
);}?> |
|
1
2
3
4
5
6
7
8
9
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
<?phprequire_once(‘config.php‘);require_once(‘func.php‘);require_once(‘BeanStalk.class.php‘);$beanstalk =
BeanStalk::open(array( ‘servers‘ => array( $config[‘beanStak‘]
), ‘select‘ => ‘random
peek‘ ));$beanstalk->watch(‘records‘);while(true){ //$beanstalk->watch(‘records‘); $job = $beanstalk->reserve_with_timeout(); if(is_object($job)){ $data=$job->get(); $json=json_decode($data,true); print_r($json); if(!empty($json["live_name"])&&!empty($json["start_time"])&&!empty($json["end_time"])&&!empty($json["vod_id"])){ //print_r($json); if(!empty($json["afterplay"])&&$json["afterplay"]==1) $cmd="{$config[‘afterplaycmd‘]}
{$json["live_name"]}
{$json["vod_id"]}
{$json[‘start_time‘]} {$json[‘end_time‘]}"; else $cmd="{$config[‘recordcmd‘]}
{$json["live_name"]}
{$json["vod_id"]}
{$json[‘start_time‘]} {$json[‘end_time‘]}"; echo $cmd; $chkcmd="ps
-ef |grep ‘".$cmd."‘
|grep -v ‘grep‘|wc -l"; //$chkcmd="ps
-ef |wc -l"; //echo
$chkcmd; $count=system($chkcmd); //echo
$count; if($count==0) { //system($cmd); exec($cmd,$res,$rc); //print_r($res); //print_r($rc); } Beanstalk::delete($job); //
Delete the job. $info=array(); $info["vod_id"]=$json[‘vod_id‘]; $info["record_msg"]="startjob"; $data=array(); $data["type"]="reciveRecords"; $data["message"]=$info; $url=$config[‘recordStatus‘]; $httpcode =
200; $result =
test_api($httpcode,$url,"post",json_encode($data)); print_r($data); } //$beanstalk->watch(‘records‘); } sleep(1);}?> |
原文:http://www.cnblogs.com/ldms/p/6478812.html