这里不在使用apache作为web server。该用nginx + php-fpm,性能更强大,配置更方便。而且为了跟上php的步伐,也使用了比较新的php版本php
[x] centos7nginx
[x] php7.0.12git
[x] nginx/1.10.2github
[x] php-fpm web
首先下载swoole的源码包,这个操做很简单,没有太多说的。面试
使用phpize来生成php编译配置apache
./configure 来作编译配置检测centos
make进行编译,make install进行安装服务器
命令执行:swoole
make install后,若是正确,会出现如下内容
这表示,在 /usr/lib64/php/modules/
目录中,成功生成了 swoole.so
文件
要可以使用该模块,还须要在 php.ini
文件中添加该模块。
这里须要注意,php7的模块配置文件均单独分开了。
在 php.ini
中可找到以下内容
; Note: packaged extension modules are now loaded via the .ini files
; found in the directory /etc/php.d; these are loaded by default.
;;;;
所以,若是你的php安装时,若是未特殊设置,能够在/etc/php.d
目录中,找到添加模块的配置文件。
进入到 cd /etc/php.d 目录,完成相关的配置
新增php模块后,须要从新启动服务,才会生效,若是有时候restart后依然无效,请先关闭,再从新启动。
[root@php7 swoole-src-2.0.6]# systemctl restart nginx [root@php7 swoole-src-2.0.6]# systemctl restart php-fpm
经过php -m或phpinfo()来查看是否成功加载了swoole
安装好扩展后,就是使用的问题。因为没有代码的提示,有时候很不方便,github上有人已经提供了swoole代码提示的 ide-helper 。具体设置办法以下:
这里以: phpStorme 为例,download 代码到本地
按照图片内容设置
通过以上步骤,能够在 phpStorme 中使用swoole了。而且提供代码提示。
全部的测试代码均放在 这里
请将该代码 clone
到本地,方便观察效果。
本节所提供的代码实例 demo1-serv
进入到测试代码目录,
而后在服务端使用 telnet
进行测试
首先,运行服务端的监听程序
执行这个命令后,服务器会显示:
另外开一个终端,使用 telnet
链接当前服务端监听的端口,而且输入一些文字,观察终端的变化。
这里只是进行简单的模拟回复。客户端发什么,服务器就回应什么消息。
退出telnet,观察服务器会显示什么
直接关闭窗口,或者:
此时,会在服务侧看到:
PS:若是测试环境没有安装 telnet
,请自行google安装。
学习思路这是很是重要的 不按期分享学习资料以及笔试面试题 点击加入该群