一、脚本创建
选择一个文件夹,例如在/var/www/html/project/swoole/pratice下
> vim swoole_http_service.php
$http=newswoole_http_server("0.0.0.0",9501);
$http->on('request',function($request,$response) {
var_dump($request->get,$request->post);
$response->header("Content-Type","text/html; charset=utf-8");
$response->end("Hello Swoole. #".rand(1000,9999)."");
});
$http->start();
Http服务器只需要关注请求响应即可,所以只需要监听一个onRequest事件。当有新的Http请求进入就会触发此事件。事件回调函数有2个参数,一个是$request对象,包含了请求的相关信息,如GET/POST请求的数据。
另外一个是response对象,对request的响应可以通过操作response对象来完成。$response->end()方法表示输出一段HTML内容,并结束此请求。
1.0.0.0.0表示监听所有IP 地址,一台服务器可能同时有多个 IP,如127.0.0.1本地回环 IP、局域网 IP、外网 IP,这里也可以单独指定监听一个 IP
2.9501监听的端口,如果被占用程序会抛出致命错误,中断执行。检查端口是否被占用
> netstat -lnp | grep 9501
如果被占用,可以用 kill 掉占用进程
> kill -9 pid
一般来说,我们不知道占用的进程是什么进程的话不能随便 kill 掉,不然可能造成系统崩溃,可以换一个端口。
二、执行脚本
> php /var/www/html/project/swoole/pratice/swoole_http_service.php
1. 打开浏览器,访问http://:9501
2. 可以使用apache 工具对服务器进行压力测试
3. 在swoole_framework的开源包中有压力测试的案例,其实就是模拟发包,自己写一个短轮询发包一样的。
三、小结
以上内容就是关于简单建立swoole http服务器的全部内容,明天将会告诉大家如何利用swoole创建WebSocket服务器,敬请期待。
领取专属 10元无门槛券
私享最新 技术干货