中标麒麟linux服务器系统V10安装Swoole全记录

EasySwoole 是一款基于 Swoole Server 开发的常驻内存型的分布式 PHP 框架,专为 API 而生,摆脱传统 PHP 运行模式在进程唤起和文件加载上带来的性能损失。 EasySwoole 高度封装了 Swoole Server 而依旧维持 Swoole Server 原有特性,支持同时混合监听 HTTP、自定义 TCP、UDP 协议,让开发者以最低的学习成本和精力编写出多进程、可异步、高可用的应用服务。

EasySwoole 从最早的前身 EasyPHP-Swoole,到更名为 EasySwoole,再到现如今的 EasySwoole 3.x 版本,多年时间在众多社区小伙伴的共同努力下,EasySwoole 的稳定与可靠已经经历了非常多的大企业检验。

特性

  • 强大的 TCP/UDP Server 框架,多线程,EventLoop,事件驱动,异步,Worker 进程组,Task 异步任务,毫秒定时器,SSL/TLS 隧道加密
  • EventLoop API,让用户可以直接操作底层的事件循环,将 Socket、Stream、管道等 Linux 文件加入到事件循环中
  • 定时器、协程对象池、HTTP/SOCKET 控制器、分布式微服务、RPC 支持

优势

  1. 简单易用开发效率高
  2. 并发百万 TCP 连接
  3. TCP/UDP/UnixSocket
  4. 支持异步/同步/协程
  5. 支持多进程/多线程
  6. CPU 亲和性/守护进程

安装 Swoole 

下载首先进入 Swoole 的 Github 

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

如果没有特殊需求,请选择最新稳定版本开始下载(我这里是稳定版v4.4.23):

过程如图:

中标麒麟linux服务器系统V10安装Swoole全记录 第1张
代码:
代码语言:javascript
复制
wget https://github.com/swoole/swoole-src/archive/v4.4.23.tar.gz
tar -zvxf v4.4.23.tar.gz 
cd swoole-src-4.4.23/
中标麒麟linux服务器系统V10安装Swoole全记录 第2张

进去php安装所在的路径(宝塔默认路径):

代码语言:javascript
复制
/www/server/php/73/bin/phpize

注意:需要选择 php 对应版本的 phpize,这里使用的是绝对路径,否则编译安装无法生效。

中标麒麟linux服务器系统V10安装Swoole全记录 第3张

创建编译文件,第一个 --with,后面是 php-config 的所在路径(这个路径一般和 php 在同一个目录) /usr/local/php-7.2.2/bin/php-config,第二个 --enable,是开启 Swoole 的 ssl 功能,第三个 --enable(可选参数),是开启 Swoole 支持 http2 相关的功能:

代码语言:javascript
复制
./configure --with-php-config=/www/server/php/73/bin/php-config --enable-openssl --enable-http2
中标麒麟linux服务器系统V10安装Swoole全记录 第4张

编译 Swoole 并把编译好的文件移动到 php 的扩展目录(前面的配置 php 版本的扩展目录) 需要root权限:

代码语言:javascript
复制
sudo make && make install
中标麒麟linux服务器系统V10安装Swoole全记录 第5张

这个时候已经安装成功,需要修改 php 配置文件 php.ini,在最后面增加如下内容:

中标麒麟linux服务器系统V10安装Swoole全记录 第6张

成功安装 Swoole 之后,通过 php --ri swoole 查看 Swoole 扩展 的信息:

代码语言:javascript
复制
php --ri swoole
中标麒麟linux服务器系统V10安装Swoole全记录 第7张

接下来安装Composer:

代码语言:javascript
复制
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
中标麒麟linux服务器系统V10安装Swoole全记录 第8张

使用网站管理自带的“Composer”去执行命令:

代码语言:javascript
复制
tencentcloud/tencentcloud-sdk-php

注意选择执行参数“require”,执行目录根据实际情况而定,我是新建的目录。

中标麒麟linux服务器系统V10安装Swoole全记录 第9张

执行会新窗口中弹出,等待执行完毕关闭新窗口,打开刚刚执行的网站目录,如图自动生成“vendor”文件目录:

中标麒麟linux服务器系统V10安装Swoole全记录 第10张

将Composer切换到云镜像源:

代码语言:javascript
复制
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

 进去刚刚执行Composer文件的目录下:

代码语言:javascript
复制
cd /www/wwwroot/easyswoole
composer require easyswoole/easyswoole=3.5.x 
php vendor/easyswoole/easyswoole/bin/easyswoole install

部分php会默认禁用一些函数,例如:

中标麒麟linux服务器系统V10安装Swoole全记录 第11张

我们需要就得启用这几个php函数“putenv”,“symlink”,“readlink”和“proc_open”,打开php管理,找到“禁用函数”将对应的函数从列表中删除即可:

中标麒麟linux服务器系统V10安装Swoole全记录 第12张

再次执行安装命令,会有安装完成页面:

中标麒麟linux服务器系统V10安装Swoole全记录 第13张

最后安装 IDE 代码提示组件

代码语言:javascript
复制
composer require easyswoole/swoole-ide-helper

安装完成后直接启动框架 :

代码语言:javascript
复制
php easyswoole server start

此时可以访问 http://localhost:9501 就看到框架的欢迎页面,表示框架已经安装成功。

另外附上停止、重启和启动命令:

启动:

代码语言:javascript
复制
php easyswoole server start -d

停止:

代码语言:javascript
复制
php easyswoole server stop

重启:

代码语言:javascript
复制
php easyswoole server restart

好了,结束,每次修改文件都得需要重启才能显示。

好了记录结束,说实在的,我看不懂这些都是啥,反正功能插件是安装完成,端口配置也开通了,本地访问端口9501没有问题,我能做的就是这样了,但是总感觉有点奇怪啊按理说宝塔貌似默认就安装了Composer,因为在网站的站点设置中就有这个选择,我不知道是不是重复安装了,有点乱,哎技术不够,步骤来凑,完事了,其他网友可以忽略此文,不是教程也不是技术文章仅仅是本地安装测试使用,防止后期找不到,也拍以后再次安装时不会,所以仅仅作为记录。