猿问
下载APP

请问swoole 如何在nginx下运行

请问swoole 如何在nginx下运行


慕容森
浏览 76回答 3
3回答

慕姐829404

swoole 框架的性能在使用nginx和php-fpm的时候并没有大的提升,如果使用app_server,据作者说性能较php-fpm有2倍的提升。app_server.php使用官方例子:12345678910<?phpdefine('DEBUG',&nbsp;'on');define("WEBPATH",&nbsp;realpath(__DIR__.'/../'));require&nbsp;dirname(__DIR__)&nbsp;.&nbsp;'/libs/lib_config.php';$server&nbsp;=&nbsp;Swoole\Network\Protocol\WebServer::create(__DIR__.'/swoole.ini');$server->setAppPath(WEBPATH.'/apps/');&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//设置应用所在的目录$server->setDocumentRoot(WEBPATH);$server->setLogger(new&nbsp;\Swoole\Log\EchoLog(__DIR__."/webserver.log"));&nbsp;//Logger//$server->daemonize();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//作为守护进程$server->run(array('worker_num'&nbsp;=>&nbsp;1,&nbsp;'max_request'&nbsp;=>&nbsp;5000,&nbsp;'log_file'&nbsp;=>&nbsp;'/tmp/swoole.log'));重点来了,nginx配置:123456789101112location&nbsp;/&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!-e&nbsp;$request_filename){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;proxy_pass&nbsp;http://127.0.0.1:8888;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;}location&nbsp;~&nbsp;.*\.(php|php5)?$&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;proxy_pass&nbsp;http://127.0.0.1:8888;#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_pass&nbsp;127.0.0.1:8888;#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_pass&nbsp;unix:/dev/shm/php-cgi.sock;#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_index&nbsp;index.php;#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;include&nbsp;fastcgi.conf;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}其实有了第一条配置就可以正常访问了(除了首页),增加第二条主要是为了访问首页。&nbsp;

偶然的你

swoole是直接加载在php核心中的扩展,不需要web服务器组件支撑,它本身就提供独立的http服务

慕斯卡3215842

- master进程:IO相关处理,又由一下两类线程组成:- Accept Thread(swoole中叫做MainReactor):用于接受客户端的连接。一个swoole实例只能有一个Accept Thread。- IO Thread(swoole中叫做ReactorThread):用于接收客户端的请求,并向客户端发送响应。一个swoole实例,可以有多个IO Thread。- worker进程:用于处理具体
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答