Rumah rangka kerja php ThinkPHP Think-Swoole教程之安装

Think-Swoole教程之安装

Sep 14, 2020 am 09:27 AM
think-swoole

Swoole 是 PHP 的一个扩展,因此安装 Swoole 本质上就是安装一个 PHP 扩展。Swoole 仅支持 Linux、FreeBSD、MacOS 三种操作系统。

推荐教程:《thinkphp》《swoole教程

安装准备

安装前必须保证系统已经安装了下列软件

php-7.1 或更高版本
gcc-4.8 或更高版本
make
autoconf
Salin selepas log masuk

一般情况下前三个都已安装,需要安装 autoconf 这个工具。

Linux:yum install autoconf
Mac:brew install autoconf
Salin selepas log masuk

安装 PHP 的 Swoole 扩展

1、下载 Swoole

下载地址:https://github.com/swoole/swoole-src/releases

一般情况下,下载最新版本即可。

2、解压到 PHP 扩展目录中,例如我的解压路径是:

/Applications/MAMP/bin/php/php7.2.10/include/php/ext/
Salin selepas log masuk

解压出来的目录可以命名为 swoole 。

3、进入到解压的 swoole 目录中,执行 phpize 命令,若该命令没有添加到环境变量的话,可以执行绝对路径

sudo /Applications/MAMP/bin/php/php7.2.10/bin/phpize
Salin selepas log masuk

由于我的电脑上存在多个 PHP 版本,所以我指定了现在使用的版本来执行命令。

命令路径:/php安装目录/bin/phpize

4、执行命令:

./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.10/bin/php-config --enable-openss --enable-http2
Salin selepas log masuk

具体路径根据实际情况修改。

5、执行命令:

make && make install
Salin selepas log masuk

成功后,会出现安装的地址,例如我的地址是:

/Applications/MAMP/bin/php/php7.2.10/lib/php/extensions/no-debug-non-zts-20170718/
Salin selepas log masuk

进入这个目录,看里面是否有 swoole.so 。

6、在 php.ini 中添加 swoole 扩展。

一定要选择当前使用的 PHP 版本配置文件,可以使用 php --ini 命令查看。我的是在:

/Applications/MAMP/bin/php/php7.2.10/conf/php.ini
Salin selepas log masuk

打开 php.ini 文件,添加扩展:

extension=”/Applications/MAMP/bin/php/php7.2.10/lib/php/extensions/no-debug-non-zts-20170718/swoole.so”
Salin selepas log masuk

如果使用 MAMP 集成环境的话,除了修改上述 php.ini 文件,还需要修改集成环境动态配置的 php.ini 文件,可在面板 php 选项中点击版本后的箭头,或者 File -> Edit Template -> PHP -> PHP 7.xx -> php.ini 进行修改。

7、安装完成,执行命令:

php -m
Salin selepas log masuk

看列表中是否有 swoole 模块,若有则安装成功。

执行 php --ri swoole 命令,可查看 swoole 相关信息。

8、测试

进入到下面的路径,具体根据实际修改:

/Applications/MAMP/bin/php/php7.2.10/include/php/ext/swoole/examples/server
Salin selepas log masuk

里面有个 echo.php 文件,打开后看到有一行代码:

$serv = new swoole_server("0.0.0.0", 9501);
Salin selepas log masuk

意思是监听所有 IP ,端口号为9501。

在命令行中,输入命令:

php echo.php
Salin selepas log masuk

若命令在执行中,没有光标,也不报错,那么新建命令窗口,并输入如下命令:

Linux:
netstat -anp | grep 9501
Mac:
ps -ef | grep 9501
Salin selepas log masuk

可以看到这个进程已经在执行中了,并且有 pid 进程号,测试成功!

在 ThinkPHP 框架中安装 Think-Swoole 扩展

PHP 扩展安装好之后,就要在框架中安装扩展了。

首先,我们要先下载好 ThinkPHP 框架(Think-Swoole 扩展目前支持ThinkPHP 5.1 和 ThinkPHP 6,为了演示一些新功能,后面文章中将会使用最新的 ThinkPHP 6 框架),然后到框架根目录下执行 Think-Swoole 的安装命令:

ThinkPHP 5.1 安装命令

ThinkPHP 6 安装命令

安装完成后,执行命令:

php think swoole
Salin selepas log masuk

若看到下图提示,则插件可以正常使用:

企业微信截图_16000468811830.png

错误一:

我安装好执行上述命令的时候报错了,查看报错提示,发现是不能使用 Xdebug 这个插件,关闭就可以了。MAMP 环境下,在 php 选项里可直接关闭。

错误二:

[Swoole\Exception]
failed to listen server port[127.0.0.1:80], Error: Permission denied[13]
Salin selepas log masuk

打开 app/config/swoole.php ,可以看到 port 对应的是 80 端口,因为 Linux 和 Mac 中,1024 及以下端口只有超级管理员有使用权限,因此可将端口改为 9501 即可( host 默认是 127.0.0.1 ,代表监听本地地址,这里顺便更改为 0.0.0.0 ,表示监听所有地址)。

swoole 服务开启后,来测试一下,浏览器中输入 127.0.0.1:9501 ,则可以正常访问:

企业微信截图_16000466453453.png

同时这也表明,Swoole 自带 HTTP Server,帮我们打开了一个 http 服务,作用等效于 Apache 和 Nginx。

至此,Think-Swoole 插件安装完成。

Atas ialah kandungan terperinci Think-Swoole教程之安装. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pengoptimuman prestasi dan penyahpepijatan perkhidmatan TP6 Think-Swoole RPC Pengoptimuman prestasi dan penyahpepijatan perkhidmatan TP6 Think-Swoole RPC Oct 12, 2023 am 11:16 AM

Pengoptimuman prestasi dan penyahpepijatan perkhidmatan TP6Think-SwooleRPC 1. Pengenalan Dengan perkembangan pesat Internet, pengkomputeran teragih telah menjadi bahagian yang amat diperlukan dalam pembangunan perisian moden. Dalam pengkomputeran teragih, RPC (RemoteProcedureCall, Remote Procedure Call) ialah mekanisme komunikasi yang biasa digunakan di mana panggilan kaedah merentas rangkaian boleh dilaksanakan. Think-Swoole, sebagai rangka kerja PHP berprestasi tinggi, boleh menyokong perkhidmatan RPC dengan baik. tetapi

Kebolehskalaan tinggi dan penyebaran perkhidmatan TP6 Think-Swoole RPC Kebolehskalaan tinggi dan penyebaran perkhidmatan TP6 Think-Swoole RPC Oct 12, 2023 am 11:07 AM

TP6 (ThinkPHP6) ialah rangka kerja sumber terbuka berdasarkan PHP, yang mempunyai ciri-ciri berskala tinggi dan penggunaan teragih. Artikel ini akan memperkenalkan cara menggunakan TP6 dengan sambungan Swoole untuk membina perkhidmatan RPC berskala tinggi dan memberikan contoh kod khusus. Pertama, kita perlu memasang sambungan TP6 dan Swoole. Jalankan arahan berikut dalam baris arahan: composerrequiretopthink/thinkpeclinstallswo

Penyulitan data dan mekanisme pengesahan identiti perkhidmatan TP6 Think-Swoole RPC Penyulitan data dan mekanisme pengesahan identiti perkhidmatan TP6 Think-Swoole RPC Oct 12, 2023 am 11:29 AM

Penyulitan data dan mekanisme pengesahan identiti perkhidmatan TP6Think-SwooleRPC Dengan perkembangan pesat Internet, semakin banyak aplikasi perlu membuat panggilan jauh untuk merealisasikan interaksi data dan panggilan fungsi antara modul yang berbeza. Dalam konteks ini, RPC (RemoteProcedureCall) telah menjadi kaedah komunikasi yang penting. Rangka kerja TP6Think-Swoole boleh melaksanakan perkhidmatan RPC berprestasi tinggi Artikel ini akan memperkenalkan cara menggunakan penyulitan data dan pengesahan identiti.

Perkhidmatan RPC TP6 Think-Swoole dan penyepaduan baris gilir mesej dan aplikasi Perkhidmatan RPC TP6 Think-Swoole dan penyepaduan baris gilir mesej dan aplikasi Oct 12, 2023 am 11:37 AM

Penyepaduan dan aplikasi perkhidmatan RPC dan baris gilir mesej TP6Think-Swoole Dalam pembangunan perisian moden, perkhidmatan RPC (RemoteProcedureCall) dan baris gilir mesej adalah cara teknikal yang biasa digunakan untuk melaksanakan panggilan perkhidmatan dan pemprosesan mesej tak segerak dalam sistem yang diedarkan. Mengintegrasikan komponen Think-Swoole dalam rangka kerja TP6 boleh melaksanakan fungsi perkhidmatan RPC dan baris gilir mesej dengan mudah, serta menyediakan contoh kod ringkas untuk difahami dan digunakan oleh pembangun. 1. RPC

Pemprosesan permintaan serentak dan penjadualan perkhidmatan TP6 Think-Swoole RPC Pemprosesan permintaan serentak dan penjadualan perkhidmatan TP6 Think-Swoole RPC Oct 12, 2023 pm 12:33 PM

Pemprosesan permintaan serentak dan penjadualan perkhidmatan TP6Think-SwooleRPC Dengan perkembangan berterusan teknologi Internet, pemprosesan permintaan serentak dan penjadualan aplikasi rangkaian telah menjadi cabaran penting. Dalam rangka kerja TP6, sambungan Think-Swoole boleh digunakan untuk melaksanakan pemprosesan permintaan serentak tinggi dan penjadualan perkhidmatan RPC (RemoteProcedureCall). Artikel ini akan memperkenalkan cara membina perkhidmatan RPC berasaskan Think-Swoole dalam rangka kerja TP6 dan menyediakan

Perlindungan keselamatan dan pengesahan kebenaran perkhidmatan TP6 Think-Swoole RPC Perlindungan keselamatan dan pengesahan kebenaran perkhidmatan TP6 Think-Swoole RPC Oct 12, 2023 pm 01:15 PM

Perlindungan keselamatan dan pengesahan kebenaran perkhidmatan TP6Think-SwooleRPC Dengan peningkatan pengkomputeran awan dan perkhidmatan mikro, panggilan prosedur jauh (RPC) telah menjadi bahagian yang amat diperlukan dalam kerja harian pembangun. Apabila membangunkan perkhidmatan RPC, perlindungan keselamatan dan pengesahan kebenaran adalah sangat penting untuk memastikan bahawa hanya permintaan yang sah boleh mengakses dan memanggil perkhidmatan tersebut. Artikel ini akan memperkenalkan cara melaksanakan perlindungan keselamatan dan pengesahan kebenaran perkhidmatan RPC dalam rangka kerja TP6Think-Swoole. 1. Konsep asas perkhidmatan RPC

Ujian prestasi dan penalaan prestasi perkhidmatan TP6 Think-Swoole RPC Ujian prestasi dan penalaan prestasi perkhidmatan TP6 Think-Swoole RPC Oct 12, 2023 pm 02:19 PM

Ujian prestasi dan penalaan prestasi perkhidmatan TP6Think-SwooleRPC 1. Pengenalan Dengan perkembangan pesat Internet, aplikasi sistem teragih menjadi semakin meluas. Dalam sistem teragih, RPC (Remote Procedure Call) ialah mekanisme komunikasi biasa, yang membolehkan perkhidmatan pada nod berbeza untuk memanggil satu sama lain dan mencapai kerja kerjasama dalam sistem teragih. Dalam rangka kerja TP6, Think-Swoole, sebagai pemandu Swoole berprestasi tinggi, menyediakan sokongan perkhidmatan RPC yang mudah. Artikel ini terutamanya memperkenalkan T

Perkhidmatan RPC TP6 dan kes amalan seni bina perkhidmatan mikro yang dibina oleh Think-Swoole Perkhidmatan RPC TP6 dan kes amalan seni bina perkhidmatan mikro yang dibina oleh Think-Swoole Oct 12, 2023 pm 12:04 PM

Pengenalan kepada kes praktikal perkhidmatan RPC dan seni bina perkhidmatan mikro yang dibina oleh TP6Think-Swoole: Dengan perkembangan pesat Internet dan pengembangan skala perniagaan, seni bina monolitik tradisional tidak lagi dapat memenuhi keperluan senario perniagaan berskala besar. Oleh itu, seni bina perkhidmatan mikro telah wujud. Dalam seni bina perkhidmatan mikro, perkhidmatan RPC (RemoteProcedureCall) adalah cara penting untuk mencapai komunikasi antara perkhidmatan. Melalui perkhidmatan RPC, pelbagai perkhidmatan mikro boleh menghubungi satu sama lain dengan mudah dan cekap. Dalam artikel ini

See all articles