Commit 9684a1d3 authored by mengweifu's avatar mengweifu

add:azkaban

parent a4c339d1
<?php
namespace App\Base;
use Yaf\Controller_Abstract;
class Job extends Controller_Abstract
{
public function init() {
\Yaf\Dispatcher::getInstance()->disableView();
}
}
\ No newline at end of file
...@@ -5,6 +5,7 @@ application.bootstrap = APPLICATION_PATH"/application/Boot ...@@ -5,6 +5,7 @@ application.bootstrap = APPLICATION_PATH"/application/Boot
application.dispatcher.catchException = false application.dispatcher.catchException = false
application.dispatcher.throwException = false application.dispatcher.throwException = false
daemon.script_dir = "\\Daemon\\" daemon.script_dir = "\\Daemon\\"
job.script_dir = "\\Job\\"
appid = "goods" appid = "goods"
idgen.partner = "bp" idgen.partner = "bp"
......
# 运行环境env
if [[ X"$1" == X"" ]]; then
echo "env cannot be empty"
exit 1
fi
# 任务名称
if [[ X"$2" == X"" ]]; then
echo "task_name cannot be empty"
exit 1
fi
start_done_file="/home/services/api.go2yd.com/logs/start_script.done"
rm -f ${start_done_file}
environment=${1}
#php.ini要根据环境去修改
if [[ X"${environment}" == X"prod" || X"${environment}" == X"prod_internal" ]];then
sed -i "s#yaf.environ=dev#yaf.environ=prod#g" ini/php.ini
elif [[ X"${environment}" == X"perf" || X"${environment}" == X"perf_internal" ]];then
sed -i "s#yaf.environ=dev#yaf.environ=perf#g" ini/php.ini
elif [[ X"${environment}" == X"test" || X"${environment}" == X"test_internal" ]];then
sed -i "s#yaf.environ=dev#yaf.environ=test#g" ini/php.ini
fi
\cp -f ini/php.ini /etc/php.ini
rsyslogd >/dev/null 2>&1
#logrotate
cp -f /home/services/logrotate/logrotate-daemon.conf /etc/logrotate.d/goods-daemon.conf
#crontab
nohup /usr/sbin/crond >crond.nohup &
crontab /home/services/crontab/crontab-daemon.conf
# ls | grep -v 'tuiyitui.*\|ini\|recipe\|unify_start_script.sh' | xargs rm -rf
if [[ -e "/usr/share/zoneinfo/Asia/Shanghai" ]]; then
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
fi
# fix dir permissions
chmod -R 755 /home/services/api.go2yd.com/logs
sysctl -w net.core.somaxconn=65535
php api.go2yd.com/htdocs/Website/public/job.php goodstoes index "t=$2&n=$3&j=$2"
while true; do
is_master_on=$(pgrep -fc "$2 $1 master process")
if [[ ${is_master_on} -gt 0 ]]; then
if [[ ! -f "$start_done_file" ]]; then
touch ${start_done_file}
fi
sleep 10
continue
else
exit 1
fi
done
<?php
date_default_timezone_set("PRC");
ini_set("display_errors", "On");//打开错误提示
ini_set("error_reporting", E_ALL);//显示所有错误
/*
* cli入口脚本
* cli 配置文件:conf/cli.ini
* cli bootstrap:application/BootstrapCli.php ( 在cli.ini中配置
* 默认模块:modules/job
* 脚本位置:modules/job/controllers/xxx.php
* 调用方式:php job.php controller action "a=1&b=2"
* 测试脚本:php job.php test index "a=1&b=2"
*/
if (!substr(php_sapi_name(), 0, 3) == 'cli') {
die;
}
define('ROOT_PATH', realpath(__DIR__ . '/../'));
define('APPLICATION_PATH', realpath(__DIR__ . '/../'));
define('APP_START', microtime(true));
require APPLICATION_PATH . '/vendor/autoload.php';
require APPLICATION_PATH . '/application/library/helper.php';
$application = new Yaf\Application(APPLICATION_PATH . "/conf/cli.ini");
/**
* 获取模块/控制器/方法
*/
$module = "job";
$controller = $argv[1] ?? "";
$method = $argv[2] ?? "";
$param = $argv[3] ?? [];
if ($param) {
$param = convertUrlQuery($param);
}
$_SERVER['SERVER_NAME'] = 'job.goods';
$_SERVER['REMOTE_ADDR'] = '127.0.0.1';
$application->bootstrap()->getDispatcher()->dispatch(new Yaf\Request\Simple("", $module, $controller, $method, $param));
function convertUrlQuery($query)
{
$queryParts = explode('&', $query);
$params = array();
foreach ($queryParts as $param) {
$item = explode('=', $param);
$params[$item[0]] = $item[1];
}
return $params;
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment