为laravel 装上swoole 飞向蓝天

以laravels 入门swoole本人环境 cnetos7.4 lnmp php7.2 +Swoole 4.5.5 序

  1. 新建一个laravel应用
  2. 安装laravels
  3. 安装Supervisor
  4. 压力测试工具 ab
  5. 对 LaravelS 服务进行管理

一、新建一个laravel应用

国内通常需要安装镜像,选阿里!

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

laravel8 需要php >=7.3 暂时就不安装高版本 安装LTS6.0

composer create-project laravel/laravel Laravels --prefer-dist "6.0"

二、安装laravels

安装扩展包

composer require hhxsv5/laravel-s

生成配置文件

php artisan laravels publish

启动laravels 同时支持 stop /restart /reload /info /help 命令

php bin/laravels start
三、安装Supervisor

supervisior 官方文档

第一步

cd /opt  //option 在linux 新增软件的目录
 wget https://files.pythonhosted.org/packages/d3/7f/c780b7471ba0ff4548967a9f7a8b0bfce222c3a496c3dfad0164172222b0/supervisor-4.2.2.tar.gz   //下载软件包
yum install python-setuptools  //我未执行可能之前装了

第二步

tar -zxvf supervisor-4.2.2.tar.gz

cd supervisor-4.2.2

python setup.py install  //如果你的的不是Python2.x  请用python2.x执行,否则python3.x 将失效
- where is python   //找到python2.x 来执行
- /usr/bin/python2.7  setup.py install

# 检查是否正常安装
supervisord -v
4.2.2

# 生成配置文件
mkdir -p /etc/supervisor/conf.d
echo_supervisord_conf > /etc/supervisor/supervisord.conf

第三步

supervisord -c /etc/supervisor/supervisord.conf
开机启动项配置

创建或编辑文件

vim /usr/lib/systemd/system/supervisord.service

填入以下信息

Description=Process Monitoring and Control Daemon
After=rc-local.service nss-user-lookup.target

[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisord stop
ExecReload=/usr/bin/supervisord reload
killMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target

执行命令

systemctl daemon-reload      #重新加载

systemctl enable supervisord
systemctl start  supervisord   #不要与前一次  ‘第三步’已经启动冲突了 冲突可能不成狗
systemctl status supervisord
ps aux | grep supervisord    #查看进程

最后几步操作,进程出来说明 =》安装启动成功了

注意:root 8378 5071 0 17:40 pts/1 00:00:00 grep --color=auto supervisorctl auto 字样的为 grep 进程,仅此一条 就是启动失败

四、安装压力测试工具 ab

某博主整理AB Test 压力测试工具使用整理 segmentfault.com/a/119000001871057...

如果已经安装apache 可直接找到apache安装目录 既可执行ab 命令

如果你的是Nginx 可以单独安装

yum install -y httpd-tools

检测是否安装成功

ab -V
ab -help

执行测试,域名最后需要带 ‘/’

ab -n 100 -c 10 https://www.baidu.com/

五、对 LaravelS 服务进行管理

mkdir /etc/supervisor/conf.d
vim /etc/supervisor/supervisord.conf

修改节点

[include]
files=/etc/supervisor/conf.d/*.conf
.
.
.
/tmp/supervisor.sock 改成 /var/run/supervisor.sock

/tmp/supervisord.log 改成 /var/log/supervisor.log

/tmp/supervisord.pid 改成 /var/run/supervisor.pid

新建监听配置文件 vim /etc/supervisor/conf.d/laravels.conf

[program:laravel-s-test]
command=/usr/bin/php /path/to/project/bin/laravels start -i
numprocs=1
autostart=true
autorestart=true
startretries=3
user=www-data
redirect_stderr=true
stdout_logfile=/path/to/project/storage/logs/supervisord-stdout.log

遇到bug Error: .ini file does not include supervisord section

/etc/supervisor/conf.d/laravels.conf
加上
[supervisord]
nodaemon=true
[supervisorctl]

输入命令 supervisorctl 进入 supervisorctl 的 shell 交互界面 可以执行以下命令 监控进程了

help # 查看帮助
status # 查看程序状态
stop program_name # 关闭 指定的程序
start program_name # 启动 指定的程序
restart program_name # 重启 指定的程序
tail -f program_name # 查看 该程序的日志
update # 重启配置文件修改过的程序(修改了配置,通过这个命令加载新的配置)

个人博客停止维护,部分博客转载到这

  • 彼特城
  • 2021-04-18 12:49:29
本作品采用《CC 协议》,转载必须注明作者和本文链接
滴水穿石,石破天惊----晓疯子
zhaocrazy
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 2
游离不2

为什么不优先考虑官方的 laravel-octane

1年前 评论
zhaocrazy (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!