使用 Swoole 加速你的 CMS 系统,并实现热更新 (基于 Laravel 框架)

简介: 使用 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 框架使用,如需支持其他框架,请自行修改兼容

目录
相关文章
|
19天前
|
前端开发 中间件 PHP
|
19天前
|
数据管理 PHP 数据库
|
2月前
|
测试技术 PHP 数据库
深入解析PHP框架:Symfony框架详解与应用
📚 Symfony框架深度解析:模块化设计提升开发效率,性能优越,灵活性高,支持MVC模式。探索控制器、路由、模板(如Twig)、服务容器、事件调度器等核心概念。还包括表单处理、数据库集成( Doctrine ORM)、安全组件、国际化支持及调试工具。使用Symfony CLI快速创建应用,内置PHPUnit测试支持。开始你的高质量Web开发之旅吧!
36 2
|
2月前
|
缓存 中间件 API
PHP框架详解 - Laravel 框架
PHP框架详解 - Laravel 框架
|
2月前
|
网络协议 前端开发 关系型数据库
【workerman】uniapp+thinkPHP5使用GatewayWorker实现实时通讯
上述为之前给公司做内部通讯软件时个人整理内容,水平有限,如有错误之处,望各位园友不吝赐教!如果觉得不错,请点击推荐和关注!谢谢~๑•́₃•̀๑ [鲜花][鲜花][鲜花]
46 0
|
9月前
|
缓存 小程序 中间件
laravel5.8(一)安装及部署
Laravel,传说中美丽优雅的框架。之前一直在使用国产的thinkphp框架,可能是万物发展到最后都会统一吧,thinkphp的功能与laravel是越来越统一了 thinkphp5.1也加入了laravel一直存在的中间件功能。 但是相对来说laravel还是比较高端,入门比较容易,但是想要完全搞清楚,还是比较难,之前了解的也比较少。 高端的东西多少还得了解点。 一:安装框架 安装大概有两种方式 1:composer安装(网好的时候进行) 修改 composer 的全局配置文件(推荐方式),然后输入安装命令 bash 复制代码 composer config -g repo.packagi
84 0
laravel5.8(一)安装及部署
|
Oracle JavaScript 数据可视化
一个基于NetCore开发的前后端分离CMS系统
一个基于.Net 3构建的简单、跨平台、模块化建站系统。系统业务简单、代码清晰、层级分明、全新架构便于二次扩展开发。支持多种数据库,可用于OA、ERP、CRM、BI、物流系统等系统。
195 0
一个基于NetCore开发的前后端分离CMS系统
|
设计模式 开发框架 安全
PHP开发框架对比:Laravel、Yii、Tp、Yaf、Swoole
Laravel是一套简洁、优雅的PHP 框架(PHP Web Framework)。让我们可以从杂乱的代码中解脱出来。Laravel可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
652 0
|
缓存 PHP 开发者
MyCms 自媒体 CMS 系统 v3.3.1,支持 Swoole 热更新
MyCms 自媒体 CMS 系统 v3.3.1,支持 Swoole 热更新
182 0
MyCms 自媒体 CMS 系统 v3.3.1,支持 Swoole 热更新
|
安全 应用服务中间件 Apache
Yii2框架(六)Yii2.0框架部署nginx服务器
一直在apache服务器下开发yii2.0的项目,apache下的部署可能没有什么。服务器环境是nginx
309 0
Yii2框架(六)Yii2.0框架部署nginx服务器