首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >PHP新特性之字节码缓存和内置服务器

PHP新特性之字节码缓存和内置服务器

原创
作者头像
用户2323866
修改2021-06-29 10:30:18
修改2021-06-29 10:30:18
7580
举报
文章被收录于专栏:技术派技术派

Zend OPcache 1).从PHP5.0//开始,内置了字节码缓存功能,名为Zend OPcache。因为PHP是解释性语言,PHP解释器执行PHP脚本时会解析PHP脚本代码,生成一系列的Zend操作码,然后执行字节码,每次的HTTP请求都是这样,会消耗很多资源,使用字节码缓存可以缓存预先编译的字节码,减少响应时间,降低系统资源的压力。 启用Zend OPcache 默认情况之下,Zend OPcache是没有启动的。如果是自己编译PHP,执行的时候命令必须包含以下选项:

--enable-opcache

编译好PHP之后,还必须在 php.ini 文件中指定Zend OPcac/【php教程_linux常用命令_网络运维技术】/he的扩展路径,如下所示:

zend_extension=/path/to/opcache.so

PHP编译成功之后会立即显示Zend OPcache扩展的文件路径。可以使用下面的命令找到这个PHP扩展的路径

php-config --extension-dir

然后使用下面的代码可以确认该扩展运行正常

<?php phpinfo();

配置Zend OPcache 推荐配置

opcache.validate_timestamps = 1 //在生产环境中设为'0' opcache.revalidate_freq = 0 opcache.memory_comsumption = 64 opcache.interned_strings_buffer = 16 opcache.max_accelerated_files = 4000 opcache.fast_shutdown = 1

可以访问PHP官方网站查看详细设置。 使用Zend OPcache 1).生产环境可以设置opcache.validate_timestamps=0。在开发环境中需要设置为1 内置的HTTP服务器 1).启动 php -S localhost:4000 -c app/config/php.ini 2).不支持 .htaccess 文件。意味着不支持控制器模式。前端控制器用来转发所有的HTTP请求,需要通过 .htaccess 文件或重写规则实现。 3).可以使用路由器脚本实现以上功能。但是只支持少量的URL重写规则 php -S localhost:8000 router.php 4).判断使用的是哪个服务器:

<?php if (php_sapi_name() === 'cli-server') { //php内置服务器 } else { // 其他Web服务器 }

专题系列 PHP专题系列目录地址: github.com/xx19941215/… PHP专题系列预计写二十篇左右,主要我们日常PHP开发中容易忽略的基础知识和现代PHP开发中关于规范、部署、优化的一些实战性建议,同时还有对Javascript语言特点的深入研究。

以上所述是小编给大家介绍的PHP新特性之字节码缓存和内置服务器,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档