Beispiel #1
0
 public function __construct()
 {
     $http = new swoole_http_server("0.0.0.0", 8080);
     $http->set(array('worker_num' => 16, 'max_conn' => 10000, 'max_request' => 5000, 'dispatch_mode' => 1, 'daemonize' => 1, 'log_file' => '/var/log/swoole.log'));
     $http->on('WorkerStart', array($this, 'onWorkerStart'));
     $http->on('request', function ($request, $response) {
         if (isset($request->server)) {
             HttpServer::$server = $request->server;
         } else {
             HttpServer::$server = [];
         }
         if (isset($request->header)) {
             HttpServer::$header = $request->header;
         } else {
             HttpServer::$header = [];
         }
         if (isset($request->get)) {
             HttpServer::$get = $request->get;
         } else {
             HttpServer::$get = [];
         }
         if (isset($request->post)) {
             HttpServer::$post = $request->post;
         } else {
             HttpServer::$post = [];
         }
         // TODO handle img
         ob_start();
         try {
             //var_dump(HttpServer::$server['request_uri']);
             $_SERVER['REQUEST_URI'] = HttpServer::$server['request_uri'];
             //$_SERVER['REMOTE_ADDR'] = HttpServer::$server['request_uri'];
             $yaf_request = new Yaf_Request_Http(HttpServer::$server['request_uri']);
             $this->application->getDispatcher()->dispatch($yaf_request);
             // unset(Yaf_Application::app());
         } catch (\Exception $e) {
             var_dump($e);
         }
         $result = ob_get_contents();
         ob_end_clean();
         // add Header
         $response->header('Content-Type', 'no-cache, must-revalidate');
         $response->header('Content-Type', 'application/json');
         //$response->header('Content-Encoding', 'gzip');
         $response->header('Server', 'verycloud');
         // add cookies
         // set status
         $response->end($result);
     });
     $http->on('WorkerStop', array($this, 'onWorkerStop'));
     $http->start();
 }
Beispiel #2
0
 public function __construct()
 {
     $http = new swoole_http_server("127.0.0.1", 9501);
     $http->set(array('worker_num' => 16, 'daemonize' => true, 'max_request' => 10000, 'dispatch_mode' => 1));
     $http->on('WorkerStart', array($this, 'onWorkerStart'));
     $http->on('request', function ($request, $response) {
         if (isset($request->server)) {
             HttpServer::$server = $request->server;
         } else {
             HttpServer::$server = [];
         }
         if (isset($request->header)) {
             HttpServer::$header = $request->header;
         } else {
             HttpServer::$header = [];
         }
         if (isset($request->get)) {
             HttpServer::$get = $request->get;
         } else {
             HttpServer::$get = [];
         }
         if (isset($request->post)) {
             HttpServer::$post = $request->post;
         } else {
             HttpServer::$post = [];
         }
         // TODO handle img
         ob_start();
         try {
             $yaf_request = new Yaf\Request_Http(HttpServer::$server['request_uri']);
             $this->application->getDispatcher()->dispatch($yaf_request);
             // unset(Yaf_Application::app());
         } catch (Yaf_Exception $e) {
             var_dump($e);
         }
         $result = ob_get_contents();
         ob_end_clean();
         // add Header
         // add cookies
         // set status
         $response->end($result);
     });
     $http->start();
 }
Beispiel #3
0
 public function __construct()
 {
     $http = new swoole_http_server("0.0.0.0", 9501);
     $http->set(array('worker_num' => 8, 'daemonize' => false, 'max_request' => 1000, 'dispatch_mode' => 1));
     $http->on('WorkerStart', array($this, 'onWorkerStart'));
     $http->on('request', function ($request, $response) {
         if (isset($request->server)) {
             HttpServer::$server = $request->server;
             foreach ($request->server as $key => $value) {
                 $_SERVER[strtoupper($key)] = $value;
             }
         }
         if (isset($request->header)) {
             HttpServer::$header = $request->header;
         }
         if (isset($request->get)) {
             HttpServer::$get = $request->get;
             foreach ($request->get as $key => $value) {
                 $_GET[$key] = $value;
             }
         }
         if (isset($request->post)) {
             HttpServer::$post = $request->post;
             foreach ($request->post as $key => $value) {
                 $_POST[$key] = $value;
             }
         }
         if (isset($request->request_uri)) {
             $_SERVER['REQUEST_URI'] = $request->request_uri;
         }
         ob_start();
         //实例化ycf对象
         try {
             Ycf\Core\YcfCore::run();
         } catch (Exception $e) {
             var_dump($e);
         }
         $result = ob_get_contents();
         ob_end_clean();
         $response->end($result);
         unset($result);
     });
     $http->start();
 }
Beispiel #4
0
 public function __construct()
 {
     $http = new swoole_http_server("0.0.0.0", 9501);
     $http->set(array('worker_num' => 10, 'daemonize' => false, 'max_request' => 10000, 'dispatch_mode' => 1));
     $http->on('WorkerStart', array($this, 'onWorkerStart'));
     $http->on('request', function ($request, $response) {
         if (isset($request->server)) {
             HttpServer::$server = $request->server;
             foreach ($request->server as $key => $value) {
                 $_SERVER[strtoupper($key)] = $value;
             }
         }
         if (isset($request->header)) {
             HttpServer::$header = $request->header;
         }
         if (isset($request->get)) {
             HttpServer::$get = $request->get;
             foreach ($request->get as $key => $value) {
                 $_GET[$key] = $value;
             }
         }
         if (isset($request->post)) {
             HttpServer::$post = $request->post;
             foreach ($request->post as $key => $value) {
                 $_POST[$key] = $value;
             }
         }
         ob_start();
         //实例化yii对象
         try {
             $this->application = Yii::createWebApplication(FRAMEWORK_CONFIG);
             $this->application->run();
         } catch (Exception $e) {
             var_dump($e);
         }
         $result = ob_get_contents();
         ob_end_clean();
         $response->end($result);
         unset($result);
         unset($this->application);
     });
     $http->start();
 }
 public function __construct()
 {
     $http = new swoole_http_server("0.0.0.0", 9501);
     $http->set(array('worker_num' => 16, 'daemonize' => false, 'max_request' => 10000, 'dispatch_mode' => 1));
     $http->on('WorkerStart', array($this, 'onWorkerStart'));
     $http->on('request', function ($request, $response) {
         if (isset($request->server)) {
             HttpServer::$server = $request->server;
             foreach ($request->server as $key => $value) {
                 $_SERVER[strtoupper($key)] = $value;
             }
         }
         if (isset($request->header)) {
             HttpServer::$header = $request->header;
         }
         if (isset($request->get)) {
             HttpServer::$get = $request->get;
             foreach ($request->get as $key => $value) {
                 $_GET[$key] = $value;
             }
         }
         if (isset($request->post)) {
             HttpServer::$post = $request->post;
             foreach ($request->post as $key => $value) {
                 $_POST[$key] = $value;
             }
         }
         /*
         			$uri = explode( "?", $_SERVER['REQUEST_URI'] );
         			$_SERVER["PATH_INFO"] = $uri[0];
         			if( isset( $uri[1] ) ) {
         				$_SERVER['QUERY_STRING'] = $uri[1];
         			}*/
         $_SERVER['argv'][1] = $_SERVER["PATH_INFO"];
         ob_start();
         require_once './ThinkPHP/ThinkPHP.php';
         $result = ob_get_contents();
         ob_end_clean();
         $response->end($result);
     });
     $http->start();
 }
Beispiel #6
0
 public function __construct()
 {
     $http = new swoole_http_server('0.0.0.0', 9502);
     $http->set(array('worker_num' => 4, 'daemonize' => 0, 'dispatch_mode' => 1));
     $http->on('WorkerStart', array($this, 'onWorkerStart'));
     $http->on('request', function ($request, $response) {
         if (isset($request->server)) {
             HttpServer::$server = $request->server;
         } else {
             HttpServer::$server = [];
         }
         if (isset($request->header)) {
             HttpServer::$header = $request->header;
         } else {
             HttpServer::$header = [];
         }
         if (isset($request->get)) {
             HttpServer::$get = $request->get;
         } else {
             HttpServer::$get = [];
         }
         if (isset($request->post)) {
             HttpServer::$post = $request->post;
         } else {
             HttpServer::$post = [];
         }
         ob_start();
         try {
             $yaf_request = new Yaf_Request_Http(HttpServer::$server['request_uri']);
             $this->application->getDispatcher()->dispatch($yaf_request);
         } catch (Yaf_Exception $e) {
             var_dump($e);
         }
         $result = ob_get_contents();
         ob_end_clean();
         $response->end($result);
     });
     $http->start();
 }