Swoole简介


title: Swoole简介
date: 2020-01-10 14:29:27
categories:

  • Swoole
    tags:
  • Swoole简介

Swoole简介

PHP异步网络通信引擎

最终编译为so文件作为PHP的扩展

技术点准备工作

Linux环境下开发

PHP7,Swoole2.1 Redis

源码安装PHP7,源码安装Swoole

如何学习Swoole

  • 查看文档

  • 实现swoole的特性的功能点

  • 多看其他现有的swoole案例代码

源码安装PHP7

下载PHP7.2.2,以下为操作步骤

  • 解压
  • configure
  • make
  • make install

以下为操作实例

#将代码下载到Linux服务器/opt目录下,解压
cd /opt
yum install -y bzip2
tar -xjvf php-7.2.2.tar.bz2
#安装编译器,及其他依赖包
yum install -y gcc libxml2-devel
./configure --prefox=/home/work/study/soft/php
cd php-7.2.2
make
make install

#添加别名
echo 'PATH=$PATH:/home/work/study/soft/php/bin/' >> /etc/profile
source /etc/profile
#查看PHP版本
php -v
#查看安装模块
php -m
#写入文件测试
echo '<?php echo time();?>' > test.php
#php执行测试文件
php test.php

#查看php.ini的配置路径
php -i | grep php.ini
#根据上面获取的路径,复制配置文件
cp /opt/php-7.2.2/php.ini-development /home/work/study/soft/php/lib/php.ini

源码安装Swoole

下载Swoole源码

yum install -y git autoconf gcc-c++
git clone https://gitee.com/swoole/swoole.git
cd /home/work/swoole
#phpize是用来扩展php的扩展模块的,通过phpize可以建立php的外挂模块
phpize
#################返回结果如下#####################
#Configuring for:
#PHP Api Version:         20170718
#Zend Module Api No:      20170718
#Zend Extension Api No:   320170718
######################################
#文件中多出了configure文件
./configure --with-php-config=/home/work/study/soft/php/bin/php-config
make
make install
#################返回结果如下#####################
#Installing shared extensions:     /home/work/study/soft/php/lib/php/extensions/no-debug-non-zts-20170718/
#Installing header files:          /home/work/study/soft/php/include/php/
######################################
#查看swoole.so文件
ll /home/work/study/soft/php/lib/php/extensions/no-debug-non-zts-20170718/

PHP+Swoole配和使用

#php.ini中添加swoole扩展
echo "extension=swoole" >> /home/work/study/soft/php/lib/php.ini
#检查swoole模块是否启用
php -m | grep swoole 
#进入到示例文件
cd /home/work/swoole/examples/server
#执行示例文件
php echo.php &
#检查端口
ss -lnatup | grep 9501
#################返回结果如下#####################
tcp    LISTEN     0      128       *:9501                  *:*                   users:(("php",pid=114386,fd=3))
######################################

总结

Swoole的安装方式,对于其他PHP的扩展也适用

原文地址:https://www.cnblogs.com/anyux/p/12201720.html