zoukankan      html  css  js  c++  java
  • Swoole学习

    一、前言

    swoole是什么?官方是这样解释的:

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

    Swoole虽然是标准的PHP扩展,实际上与普通的扩展不同。普通的扩展只是提供一个库函数。而swoole扩展在运行后会接管PHP的控制权,进入事件循环。当IO事件发生后,swoole会自动回调指定的PHP函数。

    以及学习swoole需要掌握的基础知识:

    • 熟练使用PHP语言
    • 熟练使用MySQL、Redis数据库
    • 熟练使用Linux操作系统
    • 基本了解Unix网络编程相关知识(参阅《Unix网络编程(卷1) 》 )
    • 基本的gdb使用

    官方文档:https://wiki.swoole.com

    二、Swoole 环境搭建

    2.1 PHP Installation

    编译安装PHP首先需要安装对应的编译工具和一些依赖包:

    yum install libxml2 libxml2-devel curl curl-devel libpng-devel libjpeg-devel pcre-devel autoconf libmcrypt-devel gcc-c++

    PHP下载地址 在这里挑选你想用的版本即可。下载源码包后,解压至本地任意目录(保证读写权限),参考如下命令编译安装PHP:

    ./configure --prefix=/usr/local/php 
    --with-config-file-path=/etc/php 
    --enable-fpm 
    --enable-pcntl 
    --enable-mysqlnd 
    --enable-opcache 
    --enable-sockets 
    --enable-sysvmsg 
    --enable-sysvsem 
    --enable-sysvshm 
    --enable-shmop 
    --enable-zip 
    --enable-soap 
    --enable-xml 
    --enable-mbstring 
    --disable-rpath 
    --disable-debug 
    --disable-fileinfo 
    --with-mysql=mysqlnd 
    --with-mysqli=mysqlnd 
    --with-pdo-mysql=mysqlnd 
    --with-pcre-regex 
    --with-iconv 
    --with-zlib 
    --with-mcrypt 
    --with-gd 
    --with-openssl 
    --with-mhash 
    --with-xmlrpc 
    --with-curl 
    --with-imap-ssl
    sudo make
    sudo make install
    sudo mkdir /etc/php
    sudo cp php.ini-development /etc/php/php.ini
    View Code

    另外还需要将PHP的可执行目录添加到环境变量中。在 ~/.bashrc 文件末尾添加内容:

    export PATH=/usr/local/php/bin:$PATH
    export PATH=/usr/local/php/sbin:$PATH

    保存后执行命令:

    source ~/.bashrc

    2.2 Swoole Installation

    Swoole扩展下载地址 可以下载源码编译安装:

    phpize
    ./configure
    make 
    sudo make install

    还可以通过 PECL 一键安装:

    pecl install swoole

    安装成功后,修改 php.ini 加入:

    extension=swoole.so

    通过  php -m  或  phpinfo()  来查看是否成功加载了 swoole,如果没有可能是 php.ini 的路径不对,可以使用  php --ini  来定位到 php.ini 的绝对路径。

    2.3 开发工具提示包

  • 相关阅读:
    cURL(wget)—— 测试 RESTful 接口及模拟 GET/POST/PUT/DELETE/OPTIONS 请求
    docker 第一课 —— 从容器到 docker
    docker 第一课 —— 从容器到 docker
    多类 SVM 的损失函数及其梯度计算
    软RAID 0的技术概要及实现
    用 Linux blkid 命令查找块设备详情
    常用命令
    Ubuntu---samba(安装、配置、使用)***
    系统常用命令
    在64位的UBUBTU 服务器 ***
  • 原文地址:https://www.cnblogs.com/tangxuliang/p/9407030.html
Copyright © 2011-2022 走看看