swoole——创建Web服务器

一、脚本创建

选择一个文件夹,例如在/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服务器,敬请期待。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180601G13YG600?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券