Hyperf 的官网 https://hyperf.io/
Swoole 官网:https://www.swoole.com/
Swoole 在github的地址:https://github.com/swoole/swoole-src
当您不想采用 Docker 来作为运行的环境基础时,您需要确保您的运行环境达到了以下的要求:
- PHP >= 7.2
- Swoole PHP 扩展 >= 4.4,并关闭了
Short Name
- OpenSSL PHP 扩展
- JSON PHP 扩展
- PDO PHP 扩展 (如需要使用到 MySQL 客户端)
- Redis PHP 扩展 (如需要使用到 Redis 客户端)
- Protobuf PHP 扩展 (如需要使用到 gRPC 服务端或客户端)mac
检测服务器运行环境。
![](https://www.yshuq.com/wp-content/uploads/2020/04/image.png)
mac下载安装swoole扩展
wget https://github.com/swoole/swoole-src/archive/v4.4.17.tar.gz
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-1.png)
解压该扩展文件:
~ git:(master) ✗ tar zxvf v4.4.17.tar.gz
检测OpenSSL文件的位置:brew info openssl
进入到扩展文件夹里面进行编译
swoole-src-4.4.17 git:(master) ✗ ./configure --enable-http2 --enable-openssl -with-openssl-dir=/usr/local/opt/openssl@1.1
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-2.png)
然后再执行命令:
make -j12
完成之后,如下效果。
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-3.png)
再执行 make install 命令:
make install
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-4.png)
将swoole 扩展 加载到php的运行环境中。
查看php的配置文件的位置命令:
php -i|grep ini
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-5.png)
打开配置文件将swoole扩展添加到配置文件中,命令如下:
vim /usr/local/etc/php/7.3/php.ini
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-6.png)
添加代码:
extension="swoole.so"
swoole.use_shortname='Off'
注意‘O’为大写。
然后检测swoole配置文件是否加载正常,命令如下:
php --ri swoole
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-7.png)
通过composer来安装创建项目
composer create-project hyperf/hyperf-skeleton hyperf-course
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-8.png)
出现如下界面代表安装完成。
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-9.png)
查看安装完成后的文档结构如下命令:
tree -L 1
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-10.png)
进入安装好的 Hyperf 项目目录 cd hyperf-skeleton 启动命令:
Hyperf php bin/hyperf.php start
如下图表示hyperf已经启动。
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-12.png)
然后另外开启一个窗口,使用cur来访问
/ curl 127.0.0.1:9501
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-11.png)
执行压力测试命令:
ab -k -c 100 -n 10000 http://127.0.0.1:9501/
![](https://www.yshuq.com/wp-content/uploads/2020/04/image-18.png)