ThinkPHP5.1.14版本发布——增加路由缓存,又双叒叕提速啦!

日期:2018-06-01    阅读:563

该版本主要对底层容器进行了一些优化改进,并增加了路由缓存功能,可以进一步提升路由性能。


主要更新日志:
* 依赖注入的对象参数传入改进
* 改进核心类的容器实例化
* 改进日期字段的读取
* 改进验证类的`getScene`方法
* 模型的`create`方法和`save`方法支持`replace`操作
* 改进`Db`类的调用机制
* App类调整为容器类
* 改进容器默认绑定
* `Loader`类增加工厂类的实例化方法
* 增加路由变量默认规则配置参数
* 增加路由缓存设计
* 错误处理机制改进
* 增加清空路由缓存指令


此次更新后,应用App类的作用从原来的容器管理类升级到容器的实例,对Swoole、Workerman之类的支持更为方

便,而且核心类也都纳入容器的自动实例化(利用上个版本引入的__make机制),好处是不需要操心怎么实例化了

,缺点是核心类一旦在容器实例化后,就不再支持动态配置了,但都提供了对象本身的配置更改接口。

另外一个优化就是路由缓存的支持,至此为止,ThinkPHP5.1的路由三段式优化提速完成: 

第一次提速在 V5.1.0 第一个版本,宿迁网站制作路由延迟解析机制,只有当路由分组匹配后才会去实际解析该分组下面的路由规


则; 
第二次提速是在宿迁网站建设 V5.1.7 版本,重写了路由的匹配算法,一个路由分组下的路由只需要匹配检测一次; 
第三次提速是这次的 V5.1.14 版本(似乎很巧合的逢 7 提速~),增加路由缓存功能,相同的路由请求第二次可以直


接跳过路由解析进行调度请求,仅在部署模式下生效,而且提供了清除路由缓存的指令。


不得不提的是,TP5.1 的路由解析机制和匹配算法、缓存机制和 Laravel 的完全不同,Laravel的路由缓存只是缓存


路由规则,依然需要路由匹配检测过程,ThinkPHP的路由缓存后直接跳过了路由

Copyright © 2015 宿迁灵感软件有限公司  | 保留公司所有权利 | 苏ICP备13038063

新闻动态  |  网站建设  |  网站优化  |  网站案例  |  联系我们  |     |  返回首页  |