乐趣区

关于php:使用-Swoole-加速你的-CMS-系统并实现热更新-基于-Laravel-框架

主题:应用 Swoole 减速你的 CMS 零碎,并实现热更新

对于 Swoole 的简介不再在此赘述,各位能够自行查看官网的文档进行具体的理解。

本文以 MyCms 为例,简要阐明 Swoole 联合传统的 CMS 零碎进行应用,并实现热更新。

CMS 零碎:MyCms

(目前 v3.3+ 以上版本从新编写了对 Swoole 的反对,移除了包 swooletw/laravel-swoole。应用新版本的用户间接装置后批改 Nginx 配置即可)

集成 Swoole 问题:

1、系统配置更新后无奈实时读取

2、URL 别名生成后拜访 404

3、插件装置呈现问题

4、批改 PHP 文件后不失效

以上问题必须手动重启 swoole 能力失效

性能解决实现:

1、系统配置缓存更新后自行重载热更新

2、URL 路由别名缓存生成后自行重载热更新

3、插件装置 / 卸载后自行重载热更新

4、PHP 文件批改后,能够通过后盾革除缓存进行热更新

Swoole 拓展包

见 MyCmsExpand / Swoole 文件夹及根目录 swoole.php

次要文件阐明:

1、swoole.phpswoole 服务治理入口文件

2、Expand / Swoole / MySwoole.php 服务治理外围文件

3、Expand / Swoole / config.php 参数配置文件

4、Expand / Swoole / reset 须要重置的服务 (session)

Swoole 热更新外围

确认 onWorkerStart 及之前的操作没有加载须要热更新的文件,如果加载了就无奈进行热更新

示例包代码

onWorkerStart 中仅加载 Laravel 框架外围性能,onRequest 才解决相干逻辑操作

注:该示例包目前仅反对 Laravel 框架应用,如需反对其余框架,请自行批改兼容

退出移动版