swoole简介及安装

之前写过一篇关于swoole的,但是那时候也只是当作玩具自己搞了一下,现在还不知道swoole还怎么好意思说自己是phper啊- -,接下有时间的话就深入去了解一下这个东西~这里就当作笔记把

一、swoole介绍

1. swoole 简介

swoole是PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 Swoole内置了Http/WebSocket服务器端/客户端、Http2.0服务器端。

swoole提供的功能库

  1. swoole提供了哪些功能给我们用,以为我们用到哪些服务时,可以用swoole来帮我们实现。
  2. http服务 ,编写一个简单的web server。
  3. TCP/UDP服务 ,编写一个消息接受处理系统。
  4. 异步,可以异步的处理请求。
  5. 并发 ,可以并发的处理同一个业务逻辑。
  6. socket,socket通讯处理技术。
  7. 毫秒级别定时器,可以在php中使用定时器了。
  8. 协程,相比线程更稳定和好用。

如果你的业务中,有用到以上等特性,你又在用使用php,那么完全可以用swoole来完成了,再具体点的场景如下:

  • 互联网
  • 移动通信
  • 企业软件
  • 云计算
  • 网络游戏
  • 物联网(IOT)
  • 车联网
  • 智能家居等领域

二、环境部署-php7安装

一键安装包方式

简单粗暴适合快速安装,前期自己容易编译错误的时候,直接按照教程快速安装,可以用这种,下面是地址

https://lnmp.org/install.html

编译安装

大体步骤:
解压 tar
configure
make
make install

生产环境下,自己掌握如何编译,并且安装扩展

1、首先通过wget命令下载到指定文件

wget http://cn2.php.net/distributions/php-7.2.4.tar.gz

2、通过tar命令解压

tar -zxf php-7.2.4.tar.gz

3、cd到目录利用configure 生成安装文件

在安装包下面一般有个configure, 是用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,具体可以通过configure --help 查看相应的命令,这里只指定了php目录跟配置文件目录,其它任何扩展都没有编译

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm

4、编译前检查

想要编译必须要安装相应的依赖扩展库可以提前的下载这里使用yum来进行扩展安装,一般需要以下几个扩展支持,否则会出现错误

yum -y install gcc gcc-c++ libxml2-devel m4 autoconf pcre-devel make cmake bison

5、正式安装

make && make install

6、CentOS7下将php命令加入到环境变量中

在centos7.2当中就可以使用下面的方式进行添加
vim /etc/profile

pathmunge /usr/local/php/bin 配置环境变量

然后执行source /etc/profile 让当前的配置生效

7、最后配置文件拷贝到指定的目录
php -i | grep Configuration 查询配置文件目录
将源码当中的配置文件指定到相应的目录
cp php.ini-development /usr/local/php/etc/php.ini

8、扩展安装示例、通过yum安装依赖,然后在ext目录安装,同样的编译方式,比如curl的安装
yum install libcurl-devel

三、环境部署-swoole源码编译安装

Swoole安装方式跟php安装方式是一样的,下载解压、编译
wget https://pecl.php.net/get/swoole-2.1.1.tgz

三、ide提示工具安装

安装好之后呢。如果你还需要对你想对你的编辑器,比如:phpstrom 对swoole的代码提示功能,就可以下载帮助文件:https://github.com/swoole/ide-helper

点击setting选择languages 点击+号添加我们下载的文件

posted @ 2019-09-20 06:28  风暴松鼠  阅读(193)  评论(0)    收藏  举报