PHP之Swoole学习安装教程

admin3年前PHP教程57
目录
一、前言二、Swoole 环境搭建2.1 PHP Installation 2.2 Swoole Installation2.3 开发工具提示包
一、前言

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使用

官方文档:wiki.swoole

二、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:

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
./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

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

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

保存后执行命令:

source ~/.bashrc

2.2 Swoole Installation

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

2
3
4
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 开发工具提示包

github/eaglewu/swoole-ide-helper

到此这篇关于PHP之Swoole学习安装教程的文章就介绍到这了,更多相关PHP之Swoole学习安装内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

PHP解决高并发问题(opcache)

php高并发之opcache今天工作的时候接触到客户的一台服务器,业务逻辑比较简单 。估算pv在120w左右吧,用的是阿里云2c4g的服务器。一大早就开始卡顿了,登陆服务器后查看负载到了八九十。之后就...

PHP垃圾回收机制的一些理解

目录垃圾回收是什么东西?PHP 的垃圾回收算法垃圾回收对性能的影响总结相信只要入门学习过一点开发的同学都知道,不管任何编程语言,一个变量都会保存在内存中。其实,我们这些开发者就是在来回不停地操纵内存,...

tp5使用layui实现多个图片上传(带附件选择)的方法实例

tp5使用layui实现多个图片上传(带附件选择),如何加载layui在此不详细说明,有需要可以百度html代码,主要处理都是在jq中,完成方法全部原创,也许不是最简单的,但也能实现效果?123456...

详解PHP Swoole长连接常见问题

目录连接失效问题如何解决如何维持长连接结论连接失效问题例子其中,Redis常见的报错就是:配置项:timeout报错信息:Error while reading line from the serve...

PHP实现创建以太坊钱包转账等功能

1.Geth下载(对以太坊了解不深的可以后面自己查找有关geth的资料,与此类似的客户端还有Ethereum、Parity 、Mist),本文采用windows版(Windows系统:geth-win...

laravel中Join语法以及使用Join多个条件

在laravel中我们常常会使用join,leftjion和rightjoin进行连表查询,非常的方便,但是我今天遇到一个问题,就是链表查询需要on多个条件,即我要订单的id和发货人都一样,默认的jo...