Asf框架内置配置文件常驻内存技术

传统MVC 与 Asf 比较

传统的MVC框架: 每次请求都会去重新加载配置文件。即使配置文件没有内容更新, 也会去重新加载一次。这是一个很不好的设计。(开启Opcache情况下, 还是有执行的过程)

Asf框架: 会把配置内容加载到内存, 迎接下一次请求的配置不会再去磁盘查找, 直接从内存读取数据。Asf 提供最简单的配置实现 Config Cache。

什么场景下开启合适?

建议在Web应用场景下都开启吧, 后面版本可能会默认启用Config Cache

在CLI模式下(包括后台脚本)开启同样生效, 只是PHP脚本每次执行完就释放了Cache

支持数据类型有: strings, arrays, integers, boolean, doubles, floats, null

流程图

配置例子

http://www.box3.cn/phpasf/info/cache.config.html

性能测试

在开启Opcache情况下, 简单做了一个Config Cache性能测试, ab -c100 -n10000

配置文件中配置项复杂程度与性能指标是有直线联系的哟

asf.cache_config_enable = 1

Total transferred:      16109994 bytes

HTML transferred:      14259994 bytes

Requests per second:    6859.01 [#/sec] (mean)

Time per request:      14.579 [ms] (mean)

Time per request:      0.146 [ms] (mean, across all concurrent requests)

asf.cache_config_enable = 0

Total transferred:      16080000 bytes

HTML transferred:      14230000 bytes

Requests per second:    6398.22 [#/sec] (mean)

Time per request:      15.629 [ms] (mean)

Time per request:      0.156 [ms] (mean, across all concurrent requests)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容