性能

编辑该页面

警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 4.3,不再维护。

这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。

性能

ob娱乐下载Symfony是快速,对开箱即用的。然而,你可以让它更快如果你优化你的服务器和你的应用程序是解释在以下性能清单。

生产服务器清单

  1. 使用OPcache字节代码缓存
  2. 配置OPcache最大性能
  3. 不检查PHP文件的时间戳
  4. 配置PHP realpath缓存
  5. 优化作曲家自动装卸机

安装APCu Polyfill如果您的服务器使用APC

如果你的生产服务器仍然使用遗留APC PHP扩展而不是OPcache,安装APCu Polyfill组件在应用程序中启用兼容APCu PHP函数和开启支持先进Symfony特性,比如APCu缓存适配器。ob娱乐下载

使用OPcache字节代码缓存

OPcache存储编译PHP文件,避免为每个请求重新编译它们。有一些字节代码缓存可用的,但是PHP 5.5, PHP了OPcache内置的。对于旧版本,最广泛使用的字节代码缓存APC

配置OPcache最大性能

默认OPcache配置不适合Symfony应用程序,所以建议更改这些设置如下:ob娱乐下载

1 2 3 4 5 6
;php . ini;最大内存OPcache可以用来存储编译PHP文件opcache.memory_consumption=256年;最大数量的文件可以存储在缓存中opcache.max_accelerated_files=20000年

不检查PHP文件的时间戳

在生产服务器,PHP文件应该不会改变,除非部署新应用程序版本。然而,默认情况下OPcache检查缓存文件缓存以来已经改变了他们的内容。这张支票介绍了一些开销,可以避免如下:

1 2
;php . iniopcache.validate_timestamps=0

每次部署后,你必须清空,重新生成缓存OPcache。否则你不会看到更新的应用程序。鉴于在PHP中,CLI和网络流程不共享相同的OPcache,你不能清晰的web服务器OPcache通过执行一些命令在您的终端。这是一些可能的解决方案:

  1. 重新启动web服务器;
  2. 调用apc_clear_cache ()opcache_reset ()函数通过web服务器(即通过执行这些脚本,你在网络上);
  3. 使用cachetool实用程序控制APC和OPcache CLI。

配置PHPrealpath缓存

当一个相对路径转换为其真正的绝对路径,PHP缓存来提高性能的结果。打开许多PHP文件的应用程序,比如Symfony项目,至少应该使用这些值:ob娱乐下载

1 2 3 4 5 6
;php . ini;最大内存分配存储结果realpath_cache_size=4096年K;保存结果10分钟(600秒)realpath_cache_ttl=600年

请注意

PHP禁用realpath缓存的时候open_basedir配置选项启用。

优化作曲家自动装卸机

开发应用程序时使用的类装入器优化寻找新的和改变类。在生产服务器,PHP文件应该不会改变,除非部署新应用程序版本。这就是为什么你可以优化作曲家的自动装卸机扫描整个应用程序,建立一个“类图”,这是一个大数组的所有类的位置存储在供应商/作曲家/ autoload_classmap.php

执行这个命令生成类地图(并使其部署过程的一部分):

1
美元作曲家dump-autoload——no-dev classmap-authoritative
  • ——no-dev排除了类只需要在开发环境中(例如require-dev依赖项和autoload-dev规则);
  • ——classmap-authoritative创建一个类图PSR-0 PSR-4兼容的应用程序中使用的类和防止作曲家扫描文件系统类的类没有找到地图。(见:作曲家的自动装卸机优化)。
这项工作,包括代码示例,许可下