1. 程式人生 > >Swoole Framework 入門教程(3)-風騷的入口檔案

Swoole Framework 入門教程(3)-風騷的入口檔案

看一段  GSF封裝後的入口檔案的程式碼 ,求佛祖保佑程式碼無bug  如此風騷。。。。

<?php
/**
 *                            _ooOoo_
 *                           o8888888o
 *                           88" . "88
 *                           (| -_- |)
 *                            O\ = /O
 *                        ____/`---'\____
 *                      .   ' \\| |// `.
 *                       / \\||| : |||// \
 *                     / _||||| -:- |||||- \
 *                       | | \\\ - /// | |
 *                     | \_| ''\---/'' | |
 *                      \ .-\__ `-` ___/-. /
 *                   ___`. .' /--.--\ `. . __
 *                ."" '< `.___\_<|>_/___.' >'"".
 *               | | : `- \`.;`\ _ /`;.`/ - ` : | |
 *                 \ \ `-. \_ __\ /__ _/ .-` / /
 *         ======`-.____`-.___\_____/___.-`____.-'======
 *                            `=---='
 *         .............................................
 *                  佛祖保佑             永無BUG
 */
//    編寫PHP7+程式碼後需要執行在>=php7.0.0獲取效能提升
if (version_compare("7.0.0", PHP_VERSION, ">")>0) {
   die("PHP Version 7.0.0 or greater is required!!!");
//遮蔽警告
error_reporting(E_ERROR);
use Swoole\Network\Server;
use Swoole\Log\EchoLog;
use Swoole\Config;
use Swoole\Protocol\WebServer;
define('DEAMON',false);
//MVC define 載入MVC擴充套件外掛
define('MVCAPP',true) ;
//定義web路徑
define('WEBPATH', realpath(__DIR__ ));
//config file 自定義
define('CONFIGFILE',WEBPATH.'/config/http_config.ini');
//Server Log File
define('LOGFILE',WEBPATH . '/logs/server.log');
//定義APPPATH
define('APPPATH',WEBPATH . '/apps/');
//包含配置檔案
require WEBPATH . '/libs/lib_config.php';
//關閉debug
Config::$debug = false;
//設定PID檔案的儲存路徑
Server::setPidFile(__DIR__ . '/logs/http_server.pid');

/**
 * 啟動app server  獨立於nginx apache
 * php http_server.php start|stop|reload   //配置預設路由
 */
Server::start(function()
{
    $server = WebServer::create(CONFIGFILE);
    //設定app的configs
    $server->setAppPath(APPPATH);
    $server->setLogger(new EchoLog(LOGFILE));
    //作為守護程序  生產環境開啟 設定DEAMON=true
    if(DEAMON){
        $server->daemonize();
    }
    //啟動任務
    //$Task=Task::StartHomeworkCompletionCalcTask();
    //kill task
    //$Task->kill();
    //啟動服務
    $server->run(array('worker_num' =>1, 'react_num'=>2, 'max_request' => 500000, 'log_file' => LOGFILE));
});